【数据结构笔记】归并排序(merge_sort)-- python2.7

此处只有代码:

def merge(li,left,mid,right):
    temp = []
    i = left;j=mid+1
    while i <= mid and j <= right:
        if li[i] < li[j]:
            temp.append(li[i])
            i=i+1
        else:
            temp.append(li[j])
            j=j+1
    while i<=mid:
        temp.append(li[i])
        i=i+1
    while j<=left:
        temp.append(li[j])
        j=j+1
    for i in range(len(temp)):
        li[left+i] = temp[i]

def mergeSort(li, left, right):
    if(left<right):
        mid = (left + right)/2
        mergeSort(li,left,mid)
        mergeSort(li,mid+1,right)
        merge(li,left,mid,right)

结果:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/m0_37477175/article/details/79710403