欢迎访问宙启技术站
智能推送

合并两个列表:Python函数merge()

发布时间:2023-08-18 13:15:05

要合并两个列表,可以使用Python内置函数merge()merge()函数将两个有序列表合并为一个有序列表。

下面是一个实现merge()函数的示例代码:

def merge(list1, list2):
    result = []
    i, j = 0, 0

    # 将两个列表中的元素逐个比较,将较小的元素添加到result列表中
    while i < len(list1) and j < len(list2):
        if list1[i] < list2[j]:
            result.append(list1[i])
            i += 1
        else:
            result.append(list2[j])
            j += 1

    # 将剩余的元素添加到result列表中(如果有的话)
    while i < len(list1):
        result.append(list1[i])
        i += 1

    while j < len(list2):
        result.append(list2[j])
        j += 1

    return result

使用示例:

list1 = [1, 3, 5, 7, 9]
list2 = [2, 4, 6, 8, 10]

merged_list = merge(list1, list2)
print(merged_list)

输出:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

在示例中,我们定义了merge()函数,接受两个列表作为参数。在函数内部,我们使用两个指针i和j来遍历两个列表。我们将指针指向的元素进行比较,较小的元素被添加到结果列表result中,并递增相应的指针。循环结束后,我们检查是否有剩余的元素,如果有,则将剩余的元素添加到result列表中。最后,函数返回合并后的有序列表。

这是一个基本的合并两个有序列表的实现。你可以根据自己的需要进行修改和扩展。