Efficient way of finding common elements of two arrays?
6 次查看(过去 30 天)
显示 更早的评论
Dear all,
I have two arrays of different size, for example x1=2:1000; and x2=50:1500; I would like to find common elements so my exepcting answer is x3=[50:1000].
Here is the code I'm using right now, but it is too slow.
x1=2:1000;
x2=50:1500;
lx1=length(x1);
lx2=length(x2);
x1 = [x1, zeros(1,length(x2)-length(x1))];
x2 = [x2, zeros(1,length(x1)-length(x2))];
for i=1:length(x2);
for j=1:length(x1);
com(i,j)=x2(i)==x1(j);
end
end
row_com = sum(com);
[~, idx]= find(row_com);
common= x1(idx)
%matchFeatures
How can I do more efficient, preferably without using for loops? Thank you very much for any guidance or advice you could give me.
Regards,
Ivan
0 个评论
采纳的回答
更多回答(0 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!