概述
最近一周,对MATLAB有进行了新一轮的学习,对其矩阵化编程的思维有了更深入的了解。确实精妙!
例1:
将矩阵A= [1 2 3; 2 4 3; 3 4 5]中所有的数字3替换为33.
如果还停留在C语言的思维可能就是
>> for i=1:3
for j=1:3
if A(i,j)==3
A(i,j) = 33;
end
end
end
>> A
A =
1 2 33
2 4 33
33 4 5
而MATLAB语言则有更灵活的语法,
>> A(A==3) = 33
A =
1 2 33
2 4 33
33 4 5
这句的意思就是讲matlab中等于3的数复制为33;
>> A==3
ans =
0 0 1
0 0 1
1 0 0
当在MATLAB中输入A==3
>> A==3
ans =
0 0 1
0 0 1
1 0 0
得到的是一个逻辑数组,接下来的复制操作只对逻辑为真的部分进行。显然后一种写法代码更加简洁。
例2
将A= [1 2;2 3; 3 4; 4 5]每行视为坐标;将5阶零矩阵的这四个位置复制为1;
最后
以上就是娇气往事为你收集整理的matlab怎样优化for循环,MATLAB for循环优化三例的全部内容,希望文章能够帮你解决matlab怎样优化for循环,MATLAB for循环优化三例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复