归并排序

# 归并排序:把两个有序的列表合成一个列表并排序

def merge_sort(list_sorted_a,list_sorted_b):
    result =[]
    i=0
    j=0
    while i<len(list_sorted_a) and j<len(list_sorted_b):
        if list_sorted_a[i]<list_sorted_b[j]:
            result.append(list_sorted_a[i])
            i+=1
        elif list_sorted_a[i]>list_sorted_b[j]:
            result.append(list_sorted_b[j])
            j+=1
        else:
            result.append(list_sorted_a[i])
            i+=1
            result.append(list_sorted_b[j])
            j+=1
    if i!=len(list_sorted_a):
        result+=list_sorted_a[i:]
    if j!=len(list_sorted_b):
        result+=list_sorted_b[j:]
    return result
原文地址:https://www.cnblogs.com/reyinever/p/11111616.html