
怎样对MATLAB中的for循环进行优化,帮我优化下面的程序
forj=0:(2*n-1)w(j+1)=cos(pi*j/n)+i*sin(pi*j/n);endforj=1:2*nv=A(1);fork=2:nt=A(k)*w(j...
for j=0:(2*n-1)
w(j+1)=cos(pi*j/n)+i*sin(pi*j/n);
end
for j=1:2*n
v=A(1);
for k=2:n
t=A(k)*w(j)^(k-1);
v=v+t;
end
B(j)=v;
end 展开
w(j+1)=cos(pi*j/n)+i*sin(pi*j/n);
end
for j=1:2*n
v=A(1);
for k=2:n
t=A(k)*w(j)^(k-1);
v=v+t;
end
B(j)=v;
end 展开
1个回答
展开全部
第一个改成
j=0:(2*n-1);
w=cos(pi*j./n)+i*sin(pi*j./n)
追问
那这一部分 for k=2:n
t=A(k)*w(j)^(k-1)
还有比较优的算法吗?个人感觉计算次方 会更复杂
谢谢啊!
追答
这个就没有了,总之你只要明白matlab的中文名称是“矩阵工作室”你就知道了,他和C或者其他语言的最大区别就是对矩阵有着特别的处理能力或者说是速度,很多函数专门针对矩阵处理,所有要摒弃一些C的思路。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询