我正在寻找执行此操作的 matlab 方法。循环似乎很容易。我有两个向量,比如 a = [1 2 3]
和 b = [1 54 2 4 6 3]
。我想确定 a
是否是 b
的子集。这是怎么做到的?
最佳答案
可能最简单快捷的方法是使用函数 ISMEMBER和 ALL :
isSubset = all(ismember(a, b));
您还可以使用 SETDIFF和 ISEMPTY ,但这似乎效率较低(在 R2010b 中运行速度比上面的慢一点):
isSubset = isempty(setdiff(a, b));
关于matlab - 如何检查一个向量是否是另一个向量的子集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10110240/