【发布时间】:2018-10-21 09:58:32
【问题描述】:
我需要一种有效的算法将具有重复项的列表合并到一个列表中。这些列表以不同的顺序具有相同的 excat 项目。它们都在一个大列表中。 示例:[ [1,2,3],[3,2,1],[2,1,3],[4,5],[5,4],[6] ] 输出应该是:[[1,2,3],[4,5],[6]]
我有这段代码,但是在迭代列表和删除项目时,我的索引超出了范围:
biglist = [ [1,2,3],[3,2,1],[2,1,3],[4,5],[5,4],[6] ]
for i in range(len(biglist)):
temp = set(biglist[i])
for j in range(i,len(biglist)-1):
temp2 = set(biglist[j])
if(temp == temp2):
del biglist[j]
【问题讨论】:
-
您需要按列表排序的顺序回答。
-
您在循环遍历
biglist时删除了项目,因此您的索引超出了范围。 -
@NiklasMertsch 我知道。我需要一个不同的解决方案
标签: python