我有兩個矩陣A和B,我想對它們執行明智的最大元素。我只寫了下面的代碼,效率非常低,需要很長時間才能運行。MATLAB中兩個矩陣的高效元素明智函數
A = C;
for x = 1 : height
for y = 1 : width
if(A(x, y) < B(x, y))
A(x, y) = B(x, y);
end
end
end
我搜索SO和想通了,類似的問題一直在使用bsxfun
功能(1,2,3)回答。但我不明白這一點。
可以bsxfun
也適用於此嗎?
我想要的就像A = max(B, C)
。
是不是'MAX(A,B) 「你想要什麼?從[documentation](http://es.mathworks.com/help/matlab/ref/max.html):_MAX(X,Y)返回一個與X和Y大小相同的數組,其中 最大元素取自X或Y.任何一個都可以是標量._ –
無論如何,您的代碼將佔用最少的代碼,因爲當A> B時,您分配的內容更小。 – Pieter21
@ Pieter21謝謝我糾正了它 – Hamed