python日记-快速排序算法

Posted 轻抚丶两袖风尘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python日记-快速排序算法相关的知识,希望对你有一定的参考价值。

__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日记-快速排序算法的主要内容,如果未能解决你的问题,请参考以下文章

Python排序算法之快速排序

一行Python代码搞定快速排序算法

排序算法 | 快速排序(含C++/Python代码实现)

算法日记3.选择排序

快速排序算法回顾 (Python实现)

八大排序之快速排序算法-python实现