2014 Chap10堆及左偏树-1.pdf

  1. 1、本文档共141页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2014 Chap10堆及左偏树-1

信息学竞赛讲稿 优先队列、堆与左偏树 华南师大讲稿 优先队列 堆 左偏树 应用(堆排序、霍夫曼编码、机器调度) 华南师大讲稿 优先队列 优先队列在ACM 比赛中十分常见,在统计问题、最 值问题、模拟问题和贪心问题等类型的题目中,优先队 列都有着广泛的应用。 二叉堆是一种常用的优先队列,它编程简单,效率 高。但如果问题需要对两个优先队列进行合并,二叉堆 的效率就无法令人满意了。为了解决这个问题,这时就 要采用左偏树。 华南师大讲稿 1 引言 优先队列(priority queue )是0个或多个元素的集合, 每个元素都有一个优先权或值,对优先队列执行的操作 有 1) 查找;2) 插入一个新元素;3) 删除。 最小优先队列 (min priority queue ):查找操作 用来有哪些信誉好的足球投注网站优先权最小的元素,删除操作用来删除该元素 最大优先队列 (max priority queue ):查找操作用 来有哪些信誉好的足球投注网站优先权最大的元素,删除操作用来删除该元素。 华南师大讲稿 最大树(最小树) 每个节点的值都大于(小于)或等于其子 节点(如果有的话)值的树。 华南师大讲稿 •疑问:是否可以将插入、删除时间进一步 减少? •二分的思想:logn? •树形结构? 华南师大讲稿 最大堆(最小堆) 最大(最小)的完全二叉树。 华南师大讲稿 • 堆的定义:设有n个数据元素组成的序列{a ,a ,...,a }, 1 2 n 若它满足下面的条件: • (1)这些数据元素是一棵完全二叉树中的结点,且 a (i=1,2,...n )是该完全二叉树中编号为i的结点; i • (2)若2i n ,有a2i ai ; • (3)若2i+1 n ,有a a ; 2i+1 i • 则称该序列为一个堆。 小根堆(最小堆) 大根堆(最大堆) 华南师大讲稿 堆的操作分析 •插入 •删除 华南师大讲稿 最大堆的插入 插入元素值为21 华南师大讲稿 最小堆的插入操作 •插入11 华南师大讲稿 华南师大讲稿 华南师大讲稿 华南师大讲稿 最大堆的删除 华南师大讲稿 最小堆的删除操作 华南师大讲稿 华南师大讲稿 堆操作的归纳 (1)插入一个元素 (2)删除一个元素 (3)初始堆的建立 如何实现这些操作? 华南师大讲稿 堆的存储结构 • 由于堆是完全二叉树,因此我们可以采用 二叉树的顺序存储结构。 •一维数组动态数组 华南师大讲稿 数组存储时结点间的关系分析 •如,输入21,25,49,25,16,08 0 21 1

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档