登录论坛

查看完整版本 : [MATLAB基础] matlab中有没有函数,找出两个数值数组中相同的项,比如func([1 2 6 9 12],[2 9 12 23])=[2 9 12].如果有,请找到并调用,如果


627453122
2011-12-02, 19:26
matlab中有没有函数,找出两个数值数组中相同的项,比如func([1 2 6 9 12],[2 9 12 23])=[2 9 12].如果有,请找到并调用,如果没有,请自己编写一个m文件findsame.m。


求助!!!!!!

yhcode
2011-12-06, 14:39
function Out = finds(A, B)
%假设输入数据最大为2维矩阵
%输出为一个一维向量---A交B
Out = [];
t = [];
[m1,n1] = size(A);
[m2,n2] = size(B);
if (m1*n1 >= m2*n2)
C = A;
D = B;
u = m1;
v = n1;
else
C = B;
D = A;
u = m2;
v = n2;
end
for k = 1:u
for q = 1:v
t = B(B == A(u,v));
Out = [Out, t'];
end
end