python 排序模块 ———— heapq(学习笔记)

2018-07-09 13:30:25来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

  

from heapq import *
def heasort(initi):# 排序
    h=[]
    for value in initi:
        heappush(h,value)#将每一个item进入heap中
    return [heappop(h) for  i in range(len(h))]
def merge_sort(seq):#堆排序
    if len(seq) <= 1:#如果seq的list长度小于1 直接返回
        return seq
    else:              
        middle = int(len(seq)/2)
        left = merge_sort(seq[:middle])
        right = merge_sort(seq[middle:])
        return list(merge(left, right)) 
if __name__ == '__main__':
    seq=[1,3,6,2,4]
    print(merge_sort(seq))
    print(heasort([11,2,31,4]))

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Python:运算类内建函数列举

下一篇:如何给女朋友买到优惠既好看的衣服!这时候就该Python登场了!