这个有点棘手。您想从冻结的计数器中删除字典,但是计数器在Python中不可哈希。为了使渐进复杂度稍有下降,可以使用已排序的元组代替冻结计数器:
seen = set()
result = []
for x in l1:
key = tuple(sorted(x))
if key not in seen:
result.append(x)
seen.add(key)
单线的相同想法如下所示:
[*{tuple(sorted(k)): k for k in reversed(l1)}.values()][::-1]