- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十讲 遍历法与优先队列
二叉树的应用 2009/03/31 本讲主要内容: 二叉树的非递归周游算法及应用 二叉树的存储结构与实现 堆与优先队列 深度优先周游算法 先根次序: 头节点入栈 弹出栈顶,访问 右子树入栈 左子树入栈 递归周游树、计算表达式 求叶子数 递归求树的高度 智坚 非递归深度优先周游算法 先根次序: 头节点入栈 弹出栈顶,访问 右子树入栈 左子树入栈 求树的叶子数?求树的高度? visite() ? 中根次序(对称序)深度优先周游算法 非空头节点入栈; c = leftChild(c); until (c==NULL) 弹出栈顶,访问 c = rightChild(c); 直到栈空且c==NULL; 后根次序周游算法 非空子树头节点入栈!; c = top(s); if (左子树为空) if ( 右子树也为空) c = pop(s); visit(c); else push( rightChild(c)); else push( leftChild(c)); 直到栈空; 后根次序周游算法 后根次序周游算法与迷宫问题 广度优先进行树的周游 算法步骤: 访问节点 访问儿子节点 (依次从左到右) 重复 2 二叉树的存储实现 —— 顺序表示 将完全二叉树上序号为i (广度优先顺序)的结点存储在数组 下标为i - 1的元素中(如下图)。 完全二叉树: 对于具有n个结点的完全二叉树,如果按照从上(根结点)到下(叶结点)和从左到右的顺序对二叉树中的所有结点从0开始到n-1进行编号,则对于任意的下标为i的结点,有:(1) 如果 i = 0,是根结点。如果i>0,则其父结点的下标为 ?(i-1)/2? ;(2) 如果2i+1≤n-1,则下标为i的结点的左子结点的下标为2i+1;否则,i结点没有左子结点:(3) 如果2i+2≤n-1,则下标为i的结点的右子结点的下标为2i+2。否则,i的结点没有右子结点。 顺序存储二叉树的操作 H-elements[(i-1)/2] 找父节点 H-elements[i*2+1] 找左子节点 H-elements[i*2+2] 找右子节点 H-elements[0] 将二叉树改造成完全二叉树,再按顺序存储表示。 二叉树顺序存储的特点 建立、插入、删除、访问等操作很简便。 最大占用空间与二叉树的高度相关。在某些情况下空间冗余较大。 二叉树的应用 —— 堆与 优先队列 (Priority queue) priority queue is a data structure that allows at least the following two operations: insert, which does the obvious thing. delete_min, which finds, returns and removes the minimum element in the heap. ADT of PriorityQueue Operations PriorityQueue createEmptyPriQueue( void) 创建一个空优先队列。 int isEmpty(PriorityQueue S) 若S为空,则返回1,否则返回0。 void add(PriorityQueue S, DataType e) 向S中添加元素e。 DataType min(PriorityQueue S) 返回S中的最小元素。 void removeMin(PriorityQueue S) 删除S中的最小元素。 end ADT PriorityQueue 作业: 上机布置 通过后缀表达式生成树 算法: 每个数字生成为一个叶结点,入栈。 算符生成为一个结点,弹出两个叶结点,先右后左,链接生成一棵子树,入栈。 直到表达式尾,弹出最后一个元素作为树根。 * * + 6 / 2 8 + 6 / 2 8 先根深度优先周游算法 + 6 / 2 8 中根次序深度优先周游算法 + 6 / 2 8 右顾左探 到头了 继续退栈 + 6 / 2 8 从(0,1)开始顺时针序列依次探查 N (i-1,j) w (i,j-1) ? (i, j) E (i,j+1) S (i+1,j) drection[4][2] 令k取0,1,2,3之一,
您可能关注的文档
- 第十五讲 宋夏金 课件.ppt
- 第十五课第二预防违法犯罪从杜绝不良行为做起.ppt
- 第十八周教学动安排 小学.doc
- 第十五课 我邮局寄包裹.ppt
- 第十八章 货膨胀与通货紧缩.ppt
- 第十八章 失与通货膨胀(高鸿业版)(温州大学 韩纪江).ppt
- 第十八章 瘙性皮肤病.ppt
- 第十八章 社福利服务.ppt
- 第十八章 早量子论和量子力学基础.ppt
- 第十八单元 代以来中国的思想解放潮流及重大思想理论成果.ppt
- 2026中国高精度无线雨量监测计行业前景动态与未来趋势预测报告.docx
- 2026中国依酚氯铵行业销售规模与应用趋势预测报告.docx
- 2025至2030悬浮聚四氟乙烯行业项目调研及市场前景预测评估报告.docx
- 2025-2030中国智能炒菜机行业发展分析及市场竞争格局与发展前景预测研究报告.docx
- 2025-2030母婴营养品市场发展现状调查及供需格局分析预测研究报告.docx
- 2025-2030中国医药设备行业深度调研及投资前景预测研究报告.docx
- 2025至2030环保过滤材料行业竞争格局及未来投资价值评估报告.docx
- 2026中国步进电机制造行业发展状况及投资规划分析报告.docx
- 2025-2030中国智能仓储行业市场发展分析及前景趋势与投资机会研究报告.docx
- 2026中国液浸式配电变压器行业运行动态与应用前景预测报告.docx
最近下载
- 一年级思维训练题1.doc VIP
- 市场营销_职业规划书.pdf VIP
- 企业风险管理—战略与绩效整合(中文版-雷泽佳译).pdf VIP
- 新能源充电桩建设项目监理大纲.docx VIP
- 2022年长沙幼儿师范高等专科学校招聘笔试真题及答案详解一套.docx VIP
- 武汉市部分学校2024-2025学年上学期元调模拟九年级化学试卷(word版含答案).pdf VIP
- 国开2025年秋《心理学》形成性考核练习1-6答案.docx
- 知识缺乏的护理诊断及措施.doc VIP
- IPD_PSSD_T_0092 数字化样机结构评审检查表_V2.1.xls VIP
- 2023年长沙幼儿师范高等专科学校招聘笔试真题附答案详解.docx VIP
原创力文档


文档评论(0)