国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python基础教程 > python数据结构堆的介绍

python数据结构堆的介绍

python数据结构

头像

小妮浅浅

2021-08-27 09:15:303990浏览 · 0收藏 · 0评论

说明

1、堆是用数据结构来实现的一种算法:树,数组均可。堆本身是一棵完全二叉树。

2、特点,堆:所有父节点的值大于子节点的值。最小堆,所有父节点的值小于子节点的值。

实例

class Heap(object):
    def __init__(self, list=[]):
        self.root = None
        self.list = list
        self.tree = None
        self.len = len(list)
 
    # 建堆
    def bulid_heap(self):
        if self.list != []:
            final_parent_node = int((self.len - 1) / 2)
            while final_parent_node >= 0:
                self.heapfy(final_parent_node, self.len)
                final_parent_node -= 1
 
    # 对当前节点以及向下所有子节点的一次节点交换
    def heapfy(self, node, len):
        node_left = 2 * node + 1
        node_right = 2 * node + 2
        max = node
        if node_left < len and self.list[node_left] > self.list[max]:
            max = node_left
        if node_right < len and self.list[node_right] > self.list[max]:
            max = node_right
        if max != node:
            self.swap(max, node)
            self.heapfy(max, len)
 
    # 交换元素方法
    def swap(self, i, j):
        self.list[j], self.list[i] = self.list[i], self.list[j]
 
    # 堆排序
    def heap_sort(self):
        len = self.len - 1
        while len >= 0:
            self.swap(0, len)
            self.heapfy(0, len)
            len -= 1
 
 
if __name__ == "__main__":
    list = [5, 7, 3, 1, 10, 0]
    heap = Heap(list)
    print("初始列表:{}".format(heap.list))
    heap.bulid_heap()
    print("堆化:{}".format(heap.list))
    heap.heap_sort()
    print("排序:{}".format(heap.list))

以上就是python数据结构堆的介绍,希望对大家有所帮助。更多Python学习指路:python基础教程

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

来真正的狗配人真人| 后妈的绣感6| 伦理《少妇的滋味》完整版 | 王叔我老公还在客厅呢什么小说| 午马影视免费观看电视剧| 我的老师中字ID| 灭火宝贝2户外版| 大桥ひとみ| 7777777亚洲和欧洲尺码表| 按摩3-4| 人狗大战5高清正版免费观看| 我的妈妈正在厨房里做饭英语| 九九在线观看免费播放大全电视剧| 少妇被大黑捧猛烈进出动态图| 9.1萝卜黄| 妈妈的绣感1| 少妇洗澡被强公日日澡| BOBO浏览器(海外版)| 乳腺增生| 电影《偷吃》在线观看| 欧美寡妇性猛交XXX| 狗和女人戴避孕套会传染吗| 小蓝电影全集免费观看| 《酒店激战》动漫1-5集免费观..| 白雪公主2019| 晚上打扑克视频| 百度网址| 老人玩小处雌女视频的意义| 《奶头》色情| 汆肉的日常视频| 家公给我治疗5中字| 妻子的姐姐免费观看大全电视剧| 国产精品久久久久久久久精品动漫| .美国禁忌2在线观看电视剧| 爰痴癫| 下面的小嘴又饿了| 男生把困困放在女生定眼| YOUJIZZ| 《XL司令》第一季动漫免费播放 | 刀郎个人简历| 小姨子边喂奶边和我做爰