您的位置:首页 > 编程语言 > Python开发

python算法实践4-快速排序

2010-03-16 15:03 330 查看
#快速排序
def Partition(mylist, low, high):
tmp = mylist[low]
while low < high:
while low < high and mylist[high] >= tmp:
high = high - 1
if low < high:
mylist[low] = mylist[high]
low = low + 1
while low < high and mylist[low] <= tmp:
low = low + 1
if low < high:
mylist[high] = mylist[low]
high = high - 1
mylist[low] = tmp
return low
def QuickSort(mylist, low, high):
if low < high:
pivotpos = Partition(mylist, low, high)
QuickSort(mylist, low, pivotpos - 1)
QuickSort(mylist, pivotpos + 1, high)
mylist0 = [11, 10, 3, 12, 33, 1000, 1, 333, -11]
QuickSort(mylist0, 0, len(mylist0) - 1)
print(mylist0)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: