根树及其应用.pptVIP

  • 69
  • 0
  • 约3.76千字
  • 约 20页
  • 2021-11-02 发布于广东
  • 举报
一、有向树 二、根树 三、最优树 四、前缀码 学习文档 一.有向树 有向树的定义 定义7-8.1 如果一个有向图在不考虑边的方向时是一棵树,那么,这个有向图称为有向树。 返回 学习文档 二、根树 1、根树的定义 定义7-8.2 一棵有向树T,如果恰有一个结点的入度为0, 其余全部结点入度为1,则称T为根树。入度为0的结 点称为根,出度不为0的结点称为分枝点或内部结点,出度为0的结点称为树叶或外部结点。 注意:有向树通常采纳根在顶上,全部边方向向 下的图表示(箭头也可省略)。 学习文档 2、根树中的一些术语 设a和b是树T的结点,假设从a到b有一条边,则称a是b的父亲,b是a的儿子,同一个分枝点的儿子,称为“兄弟〞。假设从a到c有一有向通路,则称a是c的祖先,c是a的后代,由结点a和它全部的后代导出的子图,称为T的子树,从树根r到一结点a的通路所含的边数称为a的结点层次。树T中全部结点层次的最大值称为树T的高度。假设同一层次上的结点从左到右是有次序的,则这种树称为有序树。 学习文档 3、树的递归定义 定义7-8.3 根树包含一个或多个结点,这些结点中 某一个称为根,其它全部结点被分成有限个子根树。 4、m叉树、 m叉完全树、正则m叉树的定义 定义7-8.4 在根树中,假设每一结点的儿子个数小于 或等于m ,则称T为m叉树。假设树T中每一结点的儿子个数等于m或者等于0,则称T为完全m叉树。假设完全m叉树全部树叶层次相同,称为正则m叉树。 当m=2时,称为二叉树。 学习文档 5、有序树,有序树与二叉树相互转换 有序树转换为二叉树,转换过程为: a)在各兄弟结点之间加一连线。 b)对任何结点,除最左的儿子之外,擦掉 该结点与其余儿子的联线。 c)对新图顺时针方向旋转45度。 学习文档 例: 学习文档 用二叉树表示有序根树的方法,可以推广到有序森林上去。 例:〔见右图〕 学习文档 6、完全m叉树性质 〔1〕定理7-8.1 设有完全m叉树,其树叶数 为t,分枝点数为i,则 (m-1)i= t-1 。 证明: 假设把完全m叉树看作是每局有m个选手参加淘 汰赛的方案表,则t表示选手总数, i表示比赛场数,每场比赛淘汰m-1人,共淘汰 i (m-1)人,最后剩下一个冠军,所以t=(m-1)i+1, 即 (m-1)i= t-1 。 学习文档 例:假设 一计算机有一计算三数之和的加法器,现求十个数之和,问至少执行多少次加法指令? 解: i =[(t-1)/(m-1)]=[(10-1)/(3-1)]=5 答:至少执行5次加法指令。 学习文档 〔2〕定义7-8. 5 在根树中,一个结点的通路长度,就是从树根到此结点的通路中的边数。我们把分枝点的通路长度称为内部通路长度,树叶的通路长度称为外部通路长度。 定理7-8.2 假设完全二叉树T有n个分枝点,且内部通 路长度的总和为I ,外部通路长度的总和为E,则 E=I+2n。 学习文档 证明:〔对分枝点数目n进行归纳〕 当n=1时,E=2,I=0,故E=I+2n成立。 假设n=k-1时成立,即E’=I’+2(k-1)。 当n=k时。取一个分枝点v,使得v的两个儿子是叶结点。设v的通路长度为m。删去v的两个儿子的一课二叉树T’。将T’与原树比较,它减少了二片长度为 m+1的树叶和一个长度为m的分枝点,因为T’有 (k-1)个分枝点,故E’=I’+2(k-1)。但在原树中, 有E=E’+2(m+1)-m=E’+m+2,I=I’+m,代入上式得: E-m-2=I-m+2(k-1),即E=I+2k。 返回 学习文档 三、最优树 1、带权二叉树 给定一组权w1,w2, …,wt,不妨设w1≤w2≤…≤wt , 设有一棵二叉树,共有t片树叶,分别带权: w1,w2, …,wt,则该二叉树称为带权二叉树。 2、最优树 定义7-8.6 在带权二叉树中,假设带权为wi的树叶的通 路长度为L(wi) ,我们把w(T)=∑wiL(wi) 称为该带权二叉树的权。 在全部带权w1,w2, …,wt 的二叉树中,具有最小权的二叉树,称为最优树。 学习文档 3、最优树的性质 定理7-8. 3 设T为带权w1≤w2≤…≤wt 的最优树,则 a)?带权w1,w2 的树叶 vw1,vw2 是兄弟。 b)以树叶vw1,vw2为儿子的分枝点,其通路长度最长。 学习文档 证明: 设在带权w

文档评论(0)

1亿VIP精品文档

相关文档