避免循环

大多数情况下,使用 Matlab 循环计算成本很高。如果使用矢量化,你的代码将会更快。它还经常使你的代码更加模块化,易于修改,并且更易于调试。主要的缺点是你必须花时间来规划数据结构,并且更容易出现尺寸误差。

例子

不要写

for t=0:0.1:2*pi
    R(end+1)=cos(t);
end

t=0:0.1:2*pi;
R=cos(t)

不要写

for i=1:n
    for j=1:m
        c(i,j)=a(i)+2*b(j);
    end
end

但类似的东西

c=repmat(a.',1,m)+2*repmat(b,n,1)

有关更多详细信息,请参阅矢量化