源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

python快速排序代码实例

  • 时间:2020-04-11 06:37 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:python快速排序代码实例
[b]一、 算法描述:[/b] 1.先从数列中取出一个数作为基准数。 2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。 3.再对左右区间重复第二步,直到各区间只有一个数。 [b] 二、python快速排序代码[/b]
[u]复制代码[/u] 代码如下:
#!/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]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部