在数组中查找那些在数组中出现两次的元素

时间:2014-08-17 13:27:19

标签: arrays matlab matrix

Given A = [3 4 5 6 7 8 9 10 11 1 2 3 4 5 6 8]       
Output B = [3 4 5 6 8]

是否有Matlab函数或命令来获得此结果?我是Matlab的新手。刚才我正在为每个元素进行操作并为它保留一个计数器。我的阵列非常大,所以这需要花费太多时间。

1 个答案:

答案 0 :(得分:2)

使用uniquehistc的组合:

uA = unique(A); %// find unique values
B = uA(histc(A, uA)>=2); %// select those that appear at least twice

上面的代码给出了至少两次的值。如果您希望两次显示完全的值,请将>=替换为==