1. 程式人生 > >python 實現快速排序和插入排序

python 實現快速排序和插入排序

append turn pre data ins pytho [] mov else

def quick_sort(data):
    if len(data)<2:
        return data
    mid = data[len(data)//2]
    left,right=[],[]
    data.remove(mid) # 這兒對傳入對象 修改了
    for num in data:
        if num>mid:
            right.append(num)
        else:
            left.append(num)
    return quick_sort(left)+[mid]+quick_sort(right)  #拼接list

def insert_sort(data):
    for i in range(len(data)):
        for j in range(i):
            if data[i]<data[j]:
                data.insert(j,data.pop(i))
                break
    return data
array = [4,2,2,3,1,5,6,7]
arr2 = quick_sort(array)
print(arr2,len(arr2))
print(array,len(array))

arr3 = insert_sort(array)
print(arr3,len(arr3))
print(array,len(array))

python 實現快速排序和插入排序