16.森林-m(m≥0)棵互不相交的树的集合 BC⑦ TI T2 T3 森林F={T1,T2,T3} 6.1.2.树的其它表示形式 1.广义表 般形式 树T的广义表=(T的根(T1,T2,,Tn) 其中T是T的子树,也是广义表。(1≤i≤m)
16.森林-----m(m≥0)棵互不相交的树的集合。 D A F H C E B G T1 I J L M K N T2 T3 森林F={T1,T2,T3} 6.1.2.树的其它表示形式 1.广义表 一般形式: 树T的广义表=(T的根(T1,T2,...,Tm)) 其中Ti是T的子树,也是广义表。 (1≤i≤m)
A A ① 树T 广义表A的树形表示 树T的广义表形式=(A(B(C,D),E,F(G,) 广义表A=(B,E,F)=((C,D),(),(G)=((),()),(),() 2.嵌套集合: A B E(FCG
树T F A G B E C D 树T的广义表形式=(A(B(C,D),E,F(G,)) 广义表A=(B,E,F)=((C,D),( ),(G))=((( ),( )),( ),(( ))) 2.嵌套集合: 广义表A的树形表示 A B C D E F G E D C B F G A
3.凹入表/书目表 A B D G 树T 凹入表 6.1.3树的基本操作 1.置T为空树:T={} 2.销毁树T 3.生成树T 4.遍历树T:按某种规则(次序)访问树T的每一个结点一次且 次的过程。 5.求树T的深度 6.求树T的度
3.凹入表/书目表 树T F A G B E C D 6.1.3 树的基本操作 1.置T为空树:T={ } 2.销毁树T 3.生成树T 4.遍历树T:按某种规则(次序)访问树T的每一个结点一次且 一次的过程。 5.求树T的深度 6.求树T的度 A ----------- B --------- C ------- D ------- E --------- F --------- G ------- 凹入表
7.插入一个结点 8.删除一个结点 9.求结点的层号 10.求结点的度 11.求树T的叶子/非叶子 12.. 6.2二叉树( binary tree) 6.2.1定义和术语 1.二叉树的递归定义 二叉树是有限个结点的集合,它或者为空集;或者是 由一个根结点和两棵互不相交的,且分别称为根的左子树 和右子树的二叉树所组成 若二叉树为空集,则为空二叉树
7.插入一个结点 8.删除一个结点 9.求结点的层号 10.求结点的度 11.求树T的叶子/非叶子 12................... 6.2 二叉树(binary tree) 6.2.1 定义和术语 1.二叉树的递归定义 二叉树是有限个结点的集合,它或者为空集;或者是 由一个根结点和两棵互不相交的,且分别称为根的左子树 和右子树的二叉树所组成。 若二叉树为空集,则为空二叉树
例 A 二叉树T1 B B 叉树T2 二叉树T3 二叉树T4 2.二叉树的5种基本形态 T1 T4
例. 二叉树T4 C A G B E F H A A B 二叉树T2 二叉树T1 2.二叉树的5种基本形态: T1 T2 T3 T4 T5 A B C 二叉树T3