如果MATLAB程序循环体中有递推公式,那还能向量化吗?比如以下程序如何向量化?

a(1)=5;for i=1:1:100 a(i+1)=a(i)-3;end
2025-03-06 21:27:38
推荐回答(2个)
回答1:

并不是所有的给出递推公式的循环体不能向量化。能否向量化取决于能否由给出的递推公式的到闭式解。比如你的例子:递推公式是a(i+1)=a(i)-3,那么很容易得到每一个元素的闭式解:a(i) = 5 - 3*(i-1),所以,这个循环就可以向量化了:a = 5 - 3*[0:100];

回答2:

应该不能。时至今日,个人观点,没有必要过分追求向量化