如何在MATLAB中对这些代码进行矢量化?哪种代码可以矢量化?

时间:2016-03-24 10:04:04

标签: matlab vectorization

比如说,我有一段代码在每对distance之间找到locations

k=1;
for i=1:size(location,1)
    for j=1:size(location,1)
        distance(k,1)=i;
        distance(k,2)=j;
        distance(k,3)=sqrt((location(i,1)-location(j,1))^2 + (location(i,2)-location(j,2))^2);
        k=k+1;
    end
end

输出必须是完全相同的3列,首先是位置编号1,第二列是位置编号2,第三列是它们之间的距离。

我如何对此进行矢量化,以便在O(n)时间内完成(可以更快地完成吗?)而不是在我的代码中的O(n ^ 2)时间内完成?

0 个答案:

没有答案