Python实现排序算法之快速排序

Python实现排序算法:快速排序、冒泡排序、插入排序、选择排序、堆排序、归并排序和希尔排序 Python实现快速排序 原理

  首先选取任意一个数据(通常选取数组的第一个数)作为关键数据,然后将所有比它小的放到它前面,所有比它大的放到它后面,这个过程称为一趟快速排序

  快速排序原理图如下:

Python实现排序算法之快速排序

实现

#coding=utf-8 #python实现快速排序 def quick_sort(li,start,end): if start < end: flag = li[start] print(flag) i = start j = end print ("i=%d;j=%d" %(i,j)) b = True while(i < j): while(li[j] >= flag and j > i): j = j -1 li[i] = li[j] while(li[i] <= flag and j > i): i = i+ 1 li[j] = li[i] li[i] = flag print(li) quick_sort(li, start, i-1) quick_sort(li, j+1, end) if __name__ == "__main__": li = [30,40,60,10,20,50] quick_sort(li,0,len(li) - 1)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzggwy.html