#快速排序算法步骤: # 1:从要排序的序列中选择元素作为参考。 )2)遍历排序对象序列,值小于参照物的在前,值大的在后。 # 3:递归排序每个元素。 V1.0版本:先快速排序2个数: list=[ 8,3 ]
默认以list[0]为参照物,将list[0]与list[1]进行对照,list[1]list[0]的情况下,进行位置交换,大的放在后面
#定义参照物index=0item=list [ index ] foriinrange (1,len(list ) ) :if ) itemlist[1]andindexi ) : list[0]
假说
首次以list[0]为参照物,将list[0]与所有数据进行比对后调整位置。
第二次以list[1]为参照物,依次与所有数据进行比较,调整位置。
接下来类推。
递归实现,代码如下:
list=[ 2,5,3,1,4 ] # list=[ 10,3,8,9,4 ] def quick (j,list ) 3360 whilej=len (list (-1:打印) list len(list ) ) :if(itemlist[I]andindexi ) : list[index],list[i]=list[i],itemindex=Ielif ) itemlist