首页 > 解决方案 > 在python中合并两个排序的项目列表

问题描述

我的问题与找出合并 2 个已排序项目的不同方法有关吗?我试图找到一种简单的方法来合并 2 个已排序的项目。

def merge(arr1, arr2):
    return sorted(arr1 + arr2)

# Example: merge([1, 4, 7], [2, 3, 6, 9]) => [1, 2, 3, 4, 6, 7, 9]

我不确定我是否让事情复杂化。这使用了一个内置函数,这意味着更难搞乱实现细节。

我还发现我可以使用cypthon 的 heapq中的 merge() 函数。

想知道是否有任何使用其他方法的想法,如下所示:

在 python 中合并的要点

标签: pythonmerge

解决方案


从 heapq使用合并

>>> l1 = [1, 4, 7]
>>> l2 = [2, 3, 6, 9]
>>> from heapq import merge
>>> list(merge(l1,l2))
[1, 2, 3, 4, 6, 7, 9]

推荐阅读