Скорость цикла Matlab зависит от объявления итератора

Я протестировал эти два способа перебора переменной-итератора и хотел бы знать, почему их производительность настолько различна. Единственное отличие — объявление диапазона сначала в отдельной переменной, а затем непосредственно в цикле.

Затраченное время составляет ~0,012 с для первого метода и ~0,003 с для второго.

Я использую Matlab R2021a.

clear all;

tic 
a = 1:1:1e6;
b = 0;
for i = a
    b = b + i;
end
toc


tic
c = 0;
for j = 1:1:1e6
    c = c + j;
end
toc
Святополк
Вопрос задан25 января 2024 г.

1 Ответ

Ваш ответ

Загрузить файл.