#-*- coding: utf-8 -*-
class QuickSort:
def sort(self,list,left,right):
#开始位置小于 位置
if(left<right):
#取到中间的一个下标值
s=list[(left+right)/2]
#i=0
i=left
#j=下标结束
j=right
while(True):
#从开始位置开始比较
while(list[i]<s):
i+=1
while(list[j]>s):
j-=1
if(i>=j):
break
print list,"***"
self.swap(list,i,j)
self.sort(list,left,i-1)
self.sort(list,j+1,right)
else:
return
# 交换变量
def swap(self,list,i,j):
t=list[i]
list[i]=list[j]
list[j]=t
print 'begin:'
l=[32,32,34,43,66,65,67,31,77,54,100,42]
l=list(set(l))#防止队列中含有重复数
print l
print l[(0+10)/2]
q=QuickSort() #生成排序的一个实例
q.sort(l,0,len(l)-1) #传入的list数组 开始下标 和 结束下标
print l