在前面分析了二叉搜索树
、红黑树
等众多树结构
,今天博主给大家换个口味,深入分析一下堆
的实现原理与维护规则。(堆
其实与二叉树
有点相似)
数据结构之堆原理分析目录
一、堆
的概述
1、什么是堆
堆
,在日常生活中是一个量词,比如:一堆木头
,下面这张图就是一堆木头
,大家注意它的摆放规则,成金字塔型
(上窄下宽)。
数据结构中的堆
,与上面的结构类似,不过借助了二叉树
的结构。肯定会有小伙伴来一句,woc,这不就是二叉树
么。。。其实你也可以暂时这么理解,看完博客你就会发现还是有些区别。
2、堆
的划分
根据堆
中元素摆放顺序的不同,可分为两种堆结构,小顶堆
、大顶堆
。
小顶堆
:对于堆中的任意节点A
,如果它存在子节点B、C,则 节点A
的值 ≤ min{
子节点B
的值, 子节点C
的值}
大顶堆
:对于堆中的任意节点A
,如果它存在子节点B、C,则 节点A
的值 ≥ max{
子节点B
的值, 子节点C
的值}
注 意 : \color{red}注意: 注意:堆只对
今天的文章数据结构堆的定义_数据结构四种基本结构「建议收藏」分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/89369.html