Python插入排序,冒泡排序,快速排序

(1)插入排序code

def insert_sort(mylist):

    c=len(mylist)

    for i in range(1,c):

        j=i-1

        key=mylist[i]

        while j>=0:

            if mylist[j]>key:

                mylist[j+1]=mylist[j]

                mylist[j]=key

            j-=1

    print(mylist)

insert_sort([2,5,7,1,3])

(2)冒泡排序code

def maopao_sort(mylist):

    c=len(mylist)

    for i  in range(c):

        for j in range(i+1,c):

            if mylist[i]>mylist[j]:

                temp=mylist[i]

                mylist[i]=mylist[j]

                mylist[j]=temp

    print(mylist)

maopao_sort([5,6,1,7,3])

(3)快速排序

def quick_sort(mylist,left,right):

    if left<right:
        i,j=left,right
        base=mylist[i]
        while i<j:
            while i<j and mylist[j]>=base:
                j-=1
            mylist[i]=mylist[j]
            while i<j and mylist[i]<=base:
                i+=1
            mylist[j]=mylist[i]
        mylist[i]=base
        quick_sort(mylist,left,i-1)
        quick_sort(mylist,j+1,right)
mylist=[2,5,9,7,1,3,4,6]
c=len(mylist)
quick_sort(mylist,0,c-1)
print(mylist)



猜你喜欢

转载自blog.csdn.net/BigBoy_Coder/article/details/80865910
今日推荐