MATLAB提供了用于集合操作的各种功能,例如联合,交集和集合成员资格的测试等。
下表显示了一些常用的设置操作-
序号 | 功能说明 |
---|---|
1 | intersect(A,B) 设置两个数组的交集;返回A和B通用的值。返回的值按排序顺序。 |
2 | intersect(A,B,'rows') 将A的每一行和B的每一行视为单个实体,并返回A和B共有的行。返回矩阵的行按排序顺序。 |
3 | ismember(A,B) 返回与A大小相同的数组,其中包含1(真),其中A的元素在B中找到。在其他地方,它返回0(假)。 |
4 | ismember(A,B,'rows') 将A的每一行和B的每一行都视为单个实体,并返回包含1(true)的向量,其中矩阵A的行也是B的行。在其他地方,它返回0(false)。 |
5 | issorted(A) 如果元素按排序顺序排列,则返回逻辑1(true),否则返回逻辑0(false)。输入A可以是向量,也可以是N×1或1×N的字符串单元格数组。如果A和sort(A)的输出相等,则认为A被排序。 |
6 | issorted(A, 'rows') 如果二维矩阵A的行按排序顺序排列,则返回逻辑1(true),否则返回逻辑0(false)。如果A和sortrows(A)的输出相等,则认为矩阵A是排序的。 |
7 | setdiff(A,B) 设置两个数组的差;返回A中的值,而不是B中的值。返回的数组中的值按排序顺序。 |
8 | setdiff(A,B,'rows') 将A的每一行和B的每一行视为单个实体,并从A中返回不在B中的行。返回矩阵的行按排序顺序。 “rows”选项不支持单元阵列。 |
9 | setxor 设置两个数组的异或 |
10 | union 设置两个数组的并集 |
11 | unique 数组中的唯一值 |
创建一个脚本文件并输入以下代码-
a = [7 23 14 15 9 12 8 24 35] b = [ 2 5 7 8 14 16 25 35 27] u = union(a, b) i = intersect(a, b) s = setdiff(a, b)运行文件时,它将产生以下结果-
a = 7 23 14 15 9 12 8 24 35 b = 2 5 7 8 14 16 25 35 27 u = 2 5 7 8 9 12 14 15 16 23 24 25 27 35 i = 7 8 14 35 s = 9 12 15 23 24