【发布时间】:2023-01-28 21:47:43
【问题描述】:
我得到了一个相当大的长度为 2 的数组 (List[List[int, int]]) 我怎样才能独特地排列它们?最好不使用不同的库
我见过几个使用 numpy 的解决方案,但我不太可能在奥林匹克竞赛中使用它
# Example input:
nums = [[2, 9], [3, 6], [9, 2], [6, 3]]
for i in nums:
# some code here
# Output:
# nums = [[2, 9], [3, 6]]
我试过这样做,但我想这不是一个非常快速的解决方案
# Example input:
nums = [[2, 9], [3, 6], [9, 2], [6, 3]]
unique = []
for i in nums:
if sorted(i) not in unique:
unique.append(sorted(i))
# Output:
print(unique) # [[2, 9], [3, 6]]
【问题讨论】:
-
是否允许内置库?
-
当然内置库没有限制
-
似乎“独特”是指“与订单无关”;如果是这样,将您的列表变成集合(如果需要,然后返回列表)
-
外部列表中元素的顺序是否重要,或者结果是否可以重新排序(使集合更容易使用)?
-
顺序不重要