MATLAB-向量的交集、并集、差集等集合运算
作者:互联网
一、集合运算的函数如下:
- intersect(A, B):集合交集,A和B均为向量
- union(A, B) :集合并集
- setdiff(A, B) :集合A减集合B的差集(如果集合A中的元素都在B中存在,则结果为空)
- ismember(a, A) :判断是否是集合中的元素
- sort(A):对向量进行排序
- issorted(A):判断集合是否有序
- setxor :集合异或(在并集但不在交集中的元素)
- unique :返回集合的不重复元素(去掉相同元素)
二、举例如下:
A = [1,2,3,4,5,6];
B = [1,2,3,7,8,9];
C = [1,2,3,6,5,4,7,8,9];
D = [1,1,2,2,3,3]
intersect(A,B); % ans = [1,2,3]
union(A,B); % ans = [1,2,3,4,5,6,7,8,9]
setdiff(A,B) % ans = [4,5,6]
setdiff(A,C) % ans = Empty matrix: 1-by-0
ismember(1,A); % ans = 1
sort(C); % ans = [1,2,3,4,5,6,7,8,9]
issorted(A); % ans = 1
setxor(A,B); % ans = [4,5,6,7,8,9]
unique(D); % ans = [1,2,3]
对于多行多列矩阵 在函数中加入参数 rows
c1 = intersect(f, D, 'rows')
结果
标签:并集,元素,差集,MATLAB,intersect,ans,集合,setdiff,向量 来源: https://www.cnblogs.com/jgg54335/p/15047779.html