1 树的基本知识.ppt

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

class PLNode { Objcet data; CTNode firstchild; // 第一个孩子节点 } 双亲节点结构: data firstchild 孩子链表表示法 java语言的类型描述: class CTree { PLNode nodes[ ]=new PLNode[MAX]; int n, root; //节点数和根节点的位置 } 树结构: 孩子链表表示法 java语言的类型描述: 带双亲的孩子链表表示法 1.双亲表示法,getParent(child) 可以在常量时间内完成,但是求节点的孩子时需要遍历整个结构。 2.孩子链表表示法,适于那些涉及孩子的操作,却不适于getParent(child)操作。 3.将双亲表示法和孩子链表表示法合在一起,可以发挥以上两种存储结构的优势,称为带双亲的孩子链表表示法 A B C D E F G root=0 n=7 Parent 0 A 1 B 2 C 3 D 4 E 5 F 6 G 1 2 3 -1 0 0 0 2 2 5 4 5 6 data firstchild 带双亲的孩子链表表示法 A B C D E F G A B C D E F G 树的孩子兄弟存储表示法 * 树的存储结构/树的实现 预备知识 小结和作业 树(Tree) 树的遍历 树的定义及基本术语 树的表示方法 树型结构和线性结构结构特点的对比 预备知识 树的基本操作 树的定义及基本术语 一棵树是一些节点的集合。 这个集合可以是空集;若不是空集,则树由称作根(root)的节点r以及0个或多个非空的(子)树T1,T2,…,TK组成,这些子树中每一棵的根都被来自r的一条(有向或无向)边(edge)所连结。 root T1 T2 … Tk 每一棵子树的根叫做根r的儿子(child),而r是每一棵子树的根的父亲(parent)。 树的示例: A A C G B D E F K L H M I J 空树 有13个节点的树 只有根节点的树 树的定义及基本术语 A C G B D E F K L H M I J A是根; 其余节点分成三个互不相交的子集,T1={B,E,F,K,L}; T2={C,G};T3={D,H,I,J,M}; T1,T2,T3都是根A的子树,且本身也是一棵树。 树的定义及基本术语 节点的度: 节点分支的个数 树的度: 树中所有节点的度的最大值 树的定义及基本术语 叶子节点: 分支(非终端)节点: 度为零的节点 度大于零的节点 A B C D E F G H I J M K L A B C D E F G H I J M K L 孩子节点(child) 双亲节点(parent) 兄弟节点(siblings) 堂兄弟 祖先节点 子孙节点 树的定义及基本术语 从节点n1到nk的路径(path): 是指节点n1,n2,…,nk的一个序列,使得对于每个ni(1≤ik)节点ni是ni+1的父亲。 边:设树中X节点是Y节点的父节点,有序对(X,Y)称为连接这两个节点的分支,也称为边(edge)。 树的定义及基本术语 A B C D E F G H I J M K L A B C D E F G H I J M K L 节点的层次: 树的深度: 假设根节点的层次为1,第i层的节点的子树根节点的层次为i+1。 树中叶子节点所在的最大层次。 1 2 3 4 树的定义及基本术语 (1) 有确定的根; (2) 树根和子树根之间为有向关系。 有向树: 树的定义及基本术语 有序树: 子树之间存在确定的次序关系。 无序树: 子树之间不存在确定的次序关系。 森林: 是 m(m≥0)棵互不相交的树的集合。 A root B E F K L C G D H I J M F 任何一棵非空树是一个二元组 Tree = (root,F)其中:root 被称为根节点,F 被称为子树森林。 树的定义及基本术语 树的表示方法 嵌套集合表示法 广义表 凹入表示法 图示法 A C G B D E F K L H J I 图示法 树的表示方法 A L E K B F C D G H I J 树 根 T3 T2 T1 凹入表示法 树的表示方法 树的表示方法 A B E K L F D H M I J 嵌套集合表示法 树的表示方法 A( ) T1 T3 T2 树根 B(E, F(K, L)), C(G)

文档评论(0)

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

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

1亿VIP精品文档

相关文档