- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
十章节树有序树
第十章 树与有序树 10.1 树的基本概念 10.2 连通图的生成树和带权连通图的最小生成树 10.3 有序树 10.4 前缀码和最优二分树 家谱 语法树 “The big elephant ate the peanut”语法图解如下: 有向树 定义1 一个有向图,若去掉边的方向,所得无向图是一棵树,则称这个有向图为有向树。 根树 设T=(V,E)是一棵有向树,若仅有一个顶点的入度为0,其余的顶点的入度均为1,这样一棵有向树我们称为根树。 入度为0的顶点称为树根, 出度为0的顶点称为树叶, 出度不为0的顶点称为分枝点。 例 画出4阶所有非同构的根树 例 画出5阶所有非同构的根树 父亲、儿子、祖先、后代、兄弟 设T=(V,E)是一棵根树。 如果e=(v,u) ?E,称v是u的父亲, u是v的儿子。 对v1,v2?V,若存在一条从v1到v2的通路,则称v1是 v2的祖先,v2是v1的后代。 若(v0,v1),(v0,v2) ?E ,说v1与v2是兄弟。 子树 设T=(V,E)是一棵根树。 v0?V,v0是 中一个分支点, 所谓以v0为根的子树是指T的一个子图T ’,T ’以v0和v0的全部的后代为顶点,以从v0出发的所有通路经过的边为边。 以v0的一个儿子为根的子树称为v0的子树。 例 试回答问题 哪个是树根? 哪些是树叶? 哪个是e的父亲? 哪些是e的祖先? 哪些是e的儿子? 哪些是e的后代? 哪些是e的兄弟? 哪些是e的子树? 有序树 定义2 一棵根树,若每一个分枝点出发的边, 分别标以整数1,2,? ,k 。 则称这样的根树为有序树。 例 m-分树、正则m-分树 如果一棵有序树的每个分枝点最多有 m个儿子,称这棵有序树为 m-分树。 若一棵 m-分树的每一个分枝点恰好有m 个儿子,称这样的 m-分树为正则m-分树。 2-分树: 左子树、右子树 对于2-分树,它的每一个分枝点的第一个子树和第二子树又分别叫左子树和右子树。 定理9 一棵正则m-分树的分枝点的个数为i,树叶的个数为t,则有 (m-1)i=t-1 例5 用带4个插座的接线板,连接19个灯到一个总插座上,问至少需要多少块接线板。 树形图的高度、顶点的路长 在一棵树形图中, 一个顶点的路长规定为从树根到这个顶点的通路的长。 一棵树形图的高度即为该树中最长路的长度。 高为h的正则m-分树 至少有m+(m-1)(h-1)片树叶,最多有mh片树叶。 例 求证一棵正则2-分树必有奇数个顶点。 例 设一棵正则2-分树的顶点个数为n, 则它的树叶个数为: 例 有8枚硬币,其中恰有1枚是假币,假币比真币重。试用一架天平称出假币,使称量的次数尽可能地少。 例有8枚硬币,其中可能有1枚是假币(但假币不多于1枚),假币与真币重量不等。试用一架天平来称量,3次称出假币或断言假币不存在,请用根树表示你的称量策略。 例 数学表达式的二分树(二叉树) 第十章 树与有序树 10.1 树的基本概念 10.2 连通图的生成树和带权连通图的最小生成树 10.3 有序树 10.4 前缀码和最优二分树 英文的编码通信 英文的编码通信中,考察用0和1来表示英文字母的问题,因为字母表中的26个字母必须用0和1组成的序列来表示,故它们可以用长度为5位(因 242625)的序列表示出来。 要传递一条信息,我们只要传递用来表示消息而组成字母序列的一个0、1字符串即可。在接收端,把这一0、1字符串分为长度为5位的序列,而这些序列对应的字母就可以识别出来。 英文字母使用频数 数串划分问题 当用各种不同长度的序列来表示字母时,在接收端,就存在如何把一个0、1的数串划分为对应字母序列的问题? 前缀码 序列 a1a2…am 是序列 b1b2…bmbm+1…bn的前缀,如果 a1a2…am=b1b2…bm。 对于序列的一个集合来说,若这个集合中的任何序列都不是另一个序列的前缀,则这个集合称为前缀码。 2-分树 前缀码 由任何一棵2-分树可以得到一个前缀码,且对应一个前缀码也一定存在一棵相应的2-分树。 前缀码 2-分树 字符串 前缀码中的码字 一段英文所用的字符串的平均长度 假设在N个英文字母组成的短文中,英文第 i个字母出现的频率是 wi次,而第 i个字母用Li长的0和1序列来表示,则N个英文字母组成的一段英文所用的字符串的平均长度为 2-分树的叶子权 假如我们有一组权w1,w2,…,wn。不失一般性,设 0≤w1≤w2 ≤… ≤
文档评论(0)