码迷,mamicode.com
首页 > 编程语言 > 详细

python日记-快速排序算法

时间:2018-07-10 11:37:21      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:pre   turn   个数   ret   quick   inpu   控制   style   temp   

__author__ = "yang xin"

array=[]

def quickSort(left,right):
if left > right:
return
temp = array[left]
i = left
j = right
while i < j:
if array[j] >= temp and i<j:
#if j-1>=left:
j -= 1
if array[i] <= temp and i<j:
# if i+1<right:
i += 1
if i < j:
tag = array[i]
array[i] = array[j]
array[j] = tag
array[left] = array[i]
array[i]=temp;
quickSort(left,i-1)
if i+1<right:
quickSort(i+1,right)
return

n=input("请输入排序数字的个数:")
m=int(n)
for i in range(m):
array.append(int(input()))
quickSort(0,m-1)#特别注意第二个参数的问题,因为在range里面是做闭右开,防止list index out of range错误,在这控制他为左闭右闭
print(array)

python日记-快速排序算法

标签:pre   turn   个数   ret   quick   inpu   控制   style   temp   

原文地址:https://www.cnblogs.com/yangdagaoge/p/9287043.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!