手机
当前位置:查字典教程网 >脚本专栏 >python >python快速排序代码实例
python快速排序代码实例
摘要:一、算法描述:1.先从数列中取出一个数作为基准数。2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。3.再对左右...

一、 算法描述:

1.先从数列中取出一个数作为基准数。

2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。

3.再对左右区间重复第二步,直到各区间只有一个数。

二、python快速排序代码

复制代码 代码如下:

#!/usr/bin/python

# -*- coding: utf-8 -*-

def sub_sort(array,low,high):

key = array[low]

while low < high:

while low < high and array[high] >= key:

high -= 1

while low < high and array[high] < key:

array[low] = array[high]

low += 1

array[high] = array[low]

array[low] = key

return low

def quick_sort(array,low,high):

if low < high:

key_index = sub_sort(array,low,high)

quick_sort(array,low,key_index)

quick_sort(array,key_index+1,high)

if __name__ == '__main__':

array = [8,10,9,6,4,16,5,13,26,18,2,45,34,23,1,7,3]

print array

quick_sort(array,0,len(array)-1)

print array

结果:

[8, 10, 9, 6, 4, 16, 5, 13, 26, 18, 2, 45, 34, 23, 1, 7, 3]

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 13, 16, 18, 23, 26, 34, 45]

【python快速排序代码实例】相关文章:

用python实现批量重命名文件的代码

python利用hook技术破解https的实例代码

python 算法 排序实现快速排序

python将人民币转换大写的脚本代码

Python 时间处理datetime实例

Python 初始化多维数组代码

python创建和使用字典实例详解

python判断端口是否打开的实现代码

python不带重复的全排列代码

python 字符串格式化代码

精品推荐
分类导航