(1)为矩阵变量预制内存而不是动态分配
慢:
for k = 2:1000
x(k) = x(k-1) + 5;
end
快:
x = zeros(1, 1000);
for k = 2:1000
x(k) = x(k-1) + 5;
end
在程序一开始就为所有大的矩阵变量预制存储单元。
(2)将循环语句改为向量形式
慢:
For ii=1:100
Square(ii)=ii^2;
End
快:
ii=1:100;
Square(ii)=ii^2;
!!!运行速度从慢到快依次为:for loop → for loop+pr