求助Matlab剔除两向量中相同数如何写
来源:学生作业帮 编辑:百度作业网作业帮 分类:数学作业 时间:2024/07/16 14:19:28
求助Matlab剔除两向量中相同数如何写
比如【1 2 3】和【2 3 4】,两向量组合后剔除相同的【2 3】,变成【1 2 3 4】
用if,while这些,不能用sort,用for的话请详细解释,因为for刚开始学,
比如【1 2 3】和【2 3 4】,两向量组合后剔除相同的【2 3】,变成【1 2 3 4】
用if,while这些,不能用sort,用for的话请详细解释,因为for刚开始学,
![求助Matlab剔除两向量中相同数如何写](/uploads/image/z/3308136-24-6.jpg?t=%E6%B1%82%E5%8A%A9Matlab%E5%89%94%E9%99%A4%E4%B8%A4%E5%90%91%E9%87%8F%E4%B8%AD%E7%9B%B8%E5%90%8C%E6%95%B0%E5%A6%82%E4%BD%95%E5%86%99)
%%
a = [1 2 3];b = [2 3 4];
c = [a,b];
d = [];
for i=1:length(c)
if sum(d == c(i)) ==0
d = [d,c(i)];
end
end
d
你还可以:
>> a= [1 2 3];b=[2 3 4];...
c = union(a,b)
c =
1 2 3 4
matlab集合操作:
1、c=union(a,b)集合并
2、c=intersect(a,b) 交集
3、setdiff (a,b)集合差
4、setxor(a,b)集合异或
再问: if sum(d == c(i)) ==0 d = [d,c(i)]; 这一步不太明白,还请解释,谢谢
再答: d == c(i)可以得到一个真假矩阵,和d大小一致,如果对应元素等于c(i)则为1,否则为0。d == c(i)求和为0,表示d中没有c(i)元素,则加入:d = [d,c(i)];
a = [1 2 3];b = [2 3 4];
c = [a,b];
d = [];
for i=1:length(c)
if sum(d == c(i)) ==0
d = [d,c(i)];
end
end
d
你还可以:
>> a= [1 2 3];b=[2 3 4];...
c = union(a,b)
c =
1 2 3 4
matlab集合操作:
1、c=union(a,b)集合并
2、c=intersect(a,b) 交集
3、setdiff (a,b)集合差
4、setxor(a,b)集合异或
再问: if sum(d == c(i)) ==0 d = [d,c(i)]; 这一步不太明白,还请解释,谢谢
再答: d == c(i)可以得到一个真假矩阵,和d大小一致,如果对应元素等于c(i)则为1,否则为0。d == c(i)求和为0,表示d中没有c(i)元素,则加入:d = [d,c(i)];