def fastSort1(x,s,e):
i=-1
flog=x[e]
for j in range(s,e-1):
if x[i]>flog:
x[i+1],x[j]=x[j],x[i+1]
i+=1
x[i+1],x[e]=x[e],x[i+1]
return i+1
def fastSort2(x,s,e):
if s>=e:
return
m=fastSort1(x,s,e)
fastSort2(x,s,m-1)
fastSort2(x,m+1,e)
#选择排序
def chooseSort(listx):
n=len(listx)
for i in range(n):
position=i
for j in range(i,n):
if x[position]>x[j]:
position=j
x[position],x[i]=x[i],x[position]
print x
if __name__=="__main__":
x=[1,5,2,3,2,6,3,4]
fastSort2(x,0,len(x)-1)
chooseSort(x)
本文详细介绍了两种经典的排序算法——快速排序和选择排序的实现过程。通过具体代码示例,展示了如何使用Python进行排序算法的编程实践,包括递归调用的快速排序和简单直观的选择排序。

被折叠的 条评论
为什么被折叠?



