比较两个向量Python

时间:2018-11-01 16:48:52

标签: python compare

例如,如果我有两个向量ab,则

a = [1, 3, 6]
b = [3, 1, 6]

由于向量的内容相同,是否有可能以某种方式比较它们并得到真实结果?

3 个答案:

答案 0 :(得分:2)

您可以使用collections.Counter

from collections import Counter
Counter(a) == Counter(b)

答案 1 :(得分:1)

您可以使用sorted然后进行比较。正如blhsing所指出的,这是 O(n log n)操作,而使用Counter的解决方案是 O(n)。由于您的情况是n=3,因此差异可以忽略不计,但是对于较大的n来说差异是显而易见的。您可能会对了解这一点感兴趣。

a = [1, 3, 6] 
b = [3, 1, 6]
sorted(a) == sorted(b)
# True

Here,您将找到有关此主题的广泛讨论。

答案 2 :(得分:0)

尝试一下:

 set(a) == set(b)

因为set自动排序。