基本信息
源码名称:python实现大根堆排序
源码大小:2.65KB
文件格式:.py
开发语言:Python
更新时间:2020-12-21
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

python基于二叉树中大根堆的排序算法每次找出列表中最大的元素

python3实现


def build(self):
        self.mark = 0  # 先置为零, 只要经过一次swap函数,就再次置为1
        index = len(self.arr) - 1
        for i in range(index):
            if i * 2   2 <= index:  # 如果左右两个子节点都存在,去比较他们的大小
                self.tri(i, i * 2   1, i * 2   2)
            elif i * 2   1 <= index:  # 如果只有左子节点存在,去比较他们的大小
                if self.arr[i] < self.arr[i * 2   1]:
                    self.swap(i, i * 2   1)
            else:
                break