MATLAB提供了用于集合操作的各種功能,例如聯(lián)合,交集和集合成員資格的測試等。
下表顯示了一些常用的設(shè)置操作-
序號 | 功能說明 |
---|---|
1 | intersect(A,B) 設(shè)置兩個數(shù)組的交集;返回A和B通用的值。返回的值按排序順序。 |
2 | intersect(A,B,'rows') 將A的每一行和B的每一行視為單個實體,并返回A和B共有的行。返回矩陣的行按排序順序。 |
3 | ismember(A,B) 返回與A大小相同的數(shù)組,其中包含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的字符串單元格數(shù)組。如果A和sort(A)的輸出相等,則認為A被排序。 |
6 | issorted(A, 'rows') 如果二維矩陣A的行按排序順序排列,則返回邏輯1(true),否則返回邏輯0(false)。如果A和sortrows(A)的輸出相等,則認為矩陣A是排序的。 |
7 | setdiff(A,B) 設(shè)置兩個數(shù)組的差;返回A中的值,而不是B中的值。返回的數(shù)組中的值按排序順序。 |
8 | setdiff(A,B,'rows') 將A的每一行和B的每一行視為單個實體,并從A中返回不在B中的行。返回矩陣的行按排序順序。 “rows”選項不支持單元陣列。 |
9 | setxor 設(shè)置兩個數(shù)組的異或 |
10 | union 設(shè)置兩個數(shù)組的并集 |
11 | unique 數(shù)組中的唯一值 |
創(chuàng)建一個腳本文件并輸入以下代碼-
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)運行文件時,它將產(chǎn)生以下結(jié)果-
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