【发布时间】:2019-03-20 03:26:30
【问题描述】:
def merge(list1, list2):
results = []
while list1 and list2:
if list1[0] < list2[0]:
results.append(list1.pop(0))
else:
results.append(list2.pop(0))
results.extend(list1)
results.extend(list2)
return results
这是将 2 个已排序列表合并为 1 个的标准算法。但是,我们如何将多个已排序列表合并为 1 个?
l = [[8, 10, 12], [4, 5, 9], [2, 11]]
merge(l)
>>> [2, 4, 5, 8, 9, 10, 11, 12]
【问题讨论】:
标签: python arrays list sorting merge