用于表示Python中的集合中的多个等效键的数据结构?

zan*_*ngw 6 python set data-structures

目前,我想找到正确的数据结构,以满足以下要求.

例如,有多个具有无序元素的数组

[1, 2], [2, 1], [3, 2, 2], [2], [2, 1, 3], [2, 2, 3]

处理完这些数据后,结果是,

[1, 2], [2, 2, 3], [2], [1, 2, 3]

使用每个数组中的排序元素并过滤重复的数组.

这是我的想法:

  • 数据结构Set(Arrays)? - 失败了.似乎内置中只有一个数组set

    set([])

  • 数据结构Array(Sets)? - 失败了.但是,内置中没有重复元素set.我想知道multiset在Python中是否有一个像C++中的数据结构?

luo*_*luo 5

将列表转换为元组(因此可以是集合的项目),然后返回列表.

>>> [list(i) for i in set([tuple(sorted(i)) for i in a])]
[[1, 2], [2], [2, 2, 3], [1, 2, 3]]
Run Code Online (Sandbox Code Playgroud)