- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《算法与数据结构》教学课件-第5章 二叉树与树--C语言描述(第2版)张乃孝编著汇
陈建国 J.G.Chen@163.com 算法 根据先根序列创建二叉树 int i=0; BinTree createRest_BTree(char *string) /* 递归创建从根开始的二叉树 */ { PBinTreeNode pbnode; char ch; ch=string[i++]; if(ch==@) pbnode=NULL; else { pbnode =new struct BinTreeNode; pbnode-info=ch; pbnode-llink=createRest_BTree(string);//构造左子树 pbnode-rlink=createRest_BTree(string);//构造右子树 } return pbnode; } 算法5.1 void preOrder( BinTree t) { if (t==NULL) return; visit(root(t)); preOrder(leftChild(t)); preOrder(rightChild(t)); } //输出二叉树 void disptree1( BinTree p) { //先序输出p为根的二叉树 if (p==NULL) {cout@; return;} coutp-info; disptree1(p-llink); disptree1(p-rlink); } void dispTree2( BinTree t) { //以括号表示法D(L,R)输出二叉树t if (t==NULL) return; coutt-info; if(t-llink!=NULL||t-rlink!=NULL){ cout(;dispTree2(t-llink); cout,;dispTree2(t-rlink);cout); } } 5.6.2 树的子表表示法 小 结 树、树林、二叉树的一些基本概念和术语; 二叉链表存储结构 树、二叉树的周游 哈夫曼树的构造方法及应用 结点表中的每一元素又包含一个子表,存放该结点的所有子结点。结点表顺序存放,子表用链接表示。 struct EdgeNode /* 子表中节点的结构 */ { int nodeposition; struct EdgeNode *link; }; struct ChiTreeNode /* 结点表中节点的结构 */ { DataType info; struct EdgeNode *children; }; 5.4 二叉树的应用 5.4.1 堆与优先队列* 5.4.2 哈夫曼树及其应用 5.4.2 哈夫曼树及其应用 扩充二叉树的外部路径长度: 其中:li为从根到第i个外部结点的路径长度,m为外部结点的个数 扩充二叉树的带权的外部路径长度 其中:wi是第i个外部结点的权值,li为从根到第i个 外部结点的路径长度,m为外部结点的个数。 哈夫曼树 假设有一组(无序)实数{w1 , w2 , w3 ,…, wm},现要构造一棵以wi(i = 1,2,…,m)为权的m个外部结点的扩充的二叉树,使得带权的外部路径长度WPL最小。满足这一要求的扩充二叉树就称为哈夫曼树或最优二叉树。 例如以下是带有相同权值5,4,7,2,5的四棵二叉树。 2 4 5 7 5 (a) 2 4 5 7 5 (b) 2 7 5 4 5 (c) 2 4 5 7 5 (d) 它们的带权路径长度分别为: (a)WPL=2?1+7?4+5?4+5?3+4?2=73 (b)WPL=7?3+ 4?3+5?3+5?3+2?1=65 (c)WPL=5?2+ 5?2+2?3+4?3+7?2=52 (d)WPL=4?3+ 2?3+7?2+5?2+5?2=52 其中(c)和(d)树的带权路径长度为最小。可以验证它们恰为最优二叉树。 在解某些判定问题时,利用赫夫曼树可以得到最佳判定算法。 例如,编制一个将百分制转换成五级分制的程序。通常的算法是: If(a60) b=‘E’; else if(a70) b=‘D’; else if(a80) b=‘C’; else if(a90) b=‘B’; else b=‘A’; 在实际生活中,学生的成绩在五个等级上的分布是不均匀的。假设其分布规律如下表示: 90~100 80
您可能关注的文档
- “百瑞景中央生活区”二期样板间装修工程施工组织设计汇.doc
- “朗芙伊”品牌建设及上市推广汇.ppt
- “温泉城”项目汇.ppt
- “挑战杯”2011河北省大学生课外学术科技作品竞赛-家居安全助手汇.doc
- 《 年产2万吨柠檬酸工程提取车间 》设计说明书汇.doc
- 《2011年度中国电子商务用户体验与投诉监测报告》PPT汇.ppt
- 《C sharp 程序设计》课程设计报告-学生成绩管理系统汇.doc
- 《C#.NET程序设计》课程设计说明书-教师管理系统汇.doc
- 《 电气控制与PLC》综合训练课程设计说明书-自动售货机的控制汇.doc
- 《220KV降压变电所初步设计》课程设计报告汇.doc
- 《管理数据库原理与开发》实验报告汇.doc
- 《空调设计》课程设计-商务楼一层的空调系统设计(仅设计夏季工况)汇.doc
- 《电磁场与电磁波》课后习题解答(全)汇.doc
- 《管理信息系统》课程设计说明书-学生学籍管理信息系统设计 汇.doc
- 《管理信息系统》课程设计报告-人员流动管理系统汇.doc
- 《综合课程设计》设计报告-基于Socket的即时通讯系统汇.doc
- 《管理信息系统》课程设计-酒店管理信息系统开发汇.doc
- 《编译原理》课程设计说明书-DO-WHILE循环语句的翻译程序设计(LR方法、输出三地址表示)汇.doc
- 《综合电子设计报告》课程设计-基于单片机的可调时钟汇.doc
- 《编译原理实践及应用》PPT教学课件-第7章 代码优化汇.ppt
最近下载
- 河南能源集团网络安全攻防知识培训(分享版)(1).pptx
- 2025年党员考试试题及答案.doc VIP
- 湖南公务员考试真题2024.docx VIP
- mPGES-2作为吸入全身麻醉药物异氟醚作用靶点的应用.pdf VIP
- 案例研究-案例研究:设计与方法.pdf VIP
- 2024届高考物理一轮复习热点题型归类训练专题13动力学和能量观点的综合应用(原卷版+解析).docx VIP
- 烟草质量检验竞赛通用知识题库-上(单选、多选题库).docx VIP
- 德育常规工作培训(1).pptx
- OMRON欧姆龙安全产品F3SG-SR PG系列安全光幕 多光束安全传感器F3SG-SR PG 系列 F3SG-□SR□系列安全光幕 用户手册.pdf
- 保险的培训资料1—开拓准客户.ppt VIP
文档评论(0)