社区
数据结构与算法
帖子详情
用链表建堆
Leguroky
2010-07-19 08:55:28
我在网上查不多这方面的资料,我能想到的,都是以快速排序方法为基础来实现合并、查找、插入等操作,大家有更好的方法吗?
...全文
191
10
打赏
收藏
用链表建堆
我在网上查不多这方面的资料,我能想到的,都是以快速排序方法为基础来实现合并、查找、插入等操作,大家有更好的方法吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kindlucy
2010-07-21
打赏
举报
回复
参考算法导论的 二项堆,对堆的合并的复杂度是O(lgn)
Leguroky
2010-07-21
打赏
举报
回复
[Quote=引用 5 楼 aaa20090987 的回复:]
引用 4 楼 leguroky 的回复:
主要是找最大值,提出最大值(就像堆排序那样),还有就是两个堆的合并。
用一个左偏树就行
[/Quote]
这里仅仅是讨论链表建堆,应该用不上左偏树吧。
Leguroky
2010-07-21
打赏
举报
回复
[Quote=引用 9 楼 kindlucy 的回复:]没看到那呢……看来也只能这样了,多谢。
参考算法导论的 二项堆,对堆的合并的复杂度是O(lgn)
[/Quote] 0
超级大笨狼
2010-07-20
打赏
举报
回复
链表要有索引,就想数组一样用。
i是根的话,2i+1右节点,2i左节点,参考算法导论前几章排序的部分建堆的办法。
有下降操作,可以保证堆的顺序。
AAA20090987
2010-07-20
打赏
举报
回复
[Quote=引用 4 楼 leguroky 的回复:]
主要是找最大值,提出最大值(就像堆排序那样),还有就是两个堆的合并。
[/Quote]
用一个左偏树就行
Leguroky
2010-07-20
打赏
举报
回复
主要是找最大值,提出最大值(就像堆排序那样),还有就是两个堆的合并。
Leguroky
2010-07-20
打赏
举报
回复
[Quote=引用 6 楼 superdullwolf 的回复:]
链表要有索引,就想数组一样用。
i是根的话,2i+1右节点,2i左节点,参考算法导论前几章排序的部分建堆的办法。
有下降操作,可以保证堆的顺序。
[/Quote]
这样是不错,不过要是两个堆合并呢?怎么处理,尤其是两个堆没有交叉的时候?我能想到的也只有重复插入操作了,有更好的思路吗?
flylee
2010-07-19
打赏
举报
回复
需要支持多大的数据量,有哪些功能需求
aduxiaozi
2010-07-19
打赏
举报
回复
啥意思啊,链表建堆?
饭fan有引力
2010-07-19
打赏
举报
回复
友情帮顶
堆应用: 合并k个排序
链表
本文探讨了使用最小堆合并K个已排序
链表
的方法,通过对比不同
建堆
策略,如Floyd
建堆
与插入
建堆
,展示了如何优化性能。同时,文章详细解释了林老师提出的高效解法,包括对
链表
头进行
建堆
、堆调整过程以及如何优雅地处理
链表
结束情况。
堆
本文深入探讨了堆数据结构的基本概念及其在C++标准库priority_queue中的应用。对比了使用
链表
和二叉搜索树作为底层机制的局限性,阐述了二叉堆作为完全二叉树的特点和优势。详细讲解了最大堆和最小堆的概念,以及堆排序的两个关键步骤:
建堆
和堆调整。最后,介绍了堆在解决TopK问题中的应用。
LeetCode——23合并K个排序
链表
本文介绍了一种高效算法,用于合并多个已排序的
链表
。通过使用优先队列,该算法可以逐步合并
链表
,每次选取当前最小的节点加入结果
链表
,直至所有
链表
元素被处理完毕。这种方法减少了
建堆
时间和空间占用。
【数据结构专题·第六章】堆与优先队列
本文系统讲解堆的核心原理与工程应用,重点剖析其作为动态最值维护结构的本质。涵盖堆的数组实现、上浮下沉操作、O(n)
建堆
原理,并深入解析五大经典面试题:TopK(小顶堆)、数据流中位数(对顶堆)、合并K个有序
链表
(小顶堆)、任务调度与滑动窗口中位数。同时对比Java PriorityQueue源码与Collections.sort适用场景,强调堆在高频算法题中的不可替代性。
堆以及堆排序
本文详细介绍了堆的概念、存储方式、堆的操作(如向下调整、
建堆
、插入、堆排序等),并阐述了堆在最小的k个数问题和k个有序
链表
合并中的应用,时间复杂度分析清晰明了。
数据结构与算法
33,026
社区成员
35,336
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章