表达式的MATLAB矢量化
问题描述:
内部循环是否可以被矢量化?如果是这样,怎么样?表达式的MATLAB矢量化
for M=1:n_iter
for k=1:length(v)
v(k) = min(v(k), (v(max(k − M,1)) + v(min(k + M,length(v))))/2);
end
end
的问题是如何从与所述迭代变量k
(v(min(k − M,1)) + v(max(k + M,length(v))))/2
我想在C++实现它之前尝试SNIP算法构建体的载体。
答
有时,向量化环路简单地需要与矢量来替换循环:
for M=1:n_iter
k=1:length(v)
v(k) = min(v(k), (v(max(k − M,1)) + v(min(k + M,length(v))))/2);
end