先序(根)遍历二叉树、 中序(根)遍历二叉树、 后序(根)遍历二叉树。
TElemType
data;
struct TriTNode *lchild, *rchild;
// 左右孩子指针
struct TriTNode *parent; //双亲指针
} TriTNode, *TriTree;
TriTree
parent lchild data 结点结构:
A
rchild
B
D
C
G
G
A (a()aB)一一棵棵C二二叉叉∧树树 D E ∧ ∧ ∧ F(b) 改∧造后∧(的b)完改全G造二叉后树的完全二叉树
A
B
C(c) 改∧造后完全D二叉树E顺序存∧储状态∧ ∧
F
∧∧ G
A B C ∧ D E ∧∧∧ F ∧∧G
(c) 改造后完全二叉树顺序存储状态
(c) 改造后完全二叉树顺序存储状态
任何一棵非空树的逻辑结构:
是一个二元组 Tree = (root,F)
其中:root 被称为根结点, F 被称为子树森林
叶子:K,L,F,G,M,I,J
结点A的孩子:B,C,D 结点B的孩子:E,F
结点I的双亲:D 结点L的双亲:E
结点A的度:3 结点B的度:2 结点M的度:0
A
B
C
结点A的层次:1 D 结点M的层次:4
例如,B,C,D为A的子树的根,则B,C,D是A的孩子, 而A则是B,C,D的双亲。
同一个双亲的孩子之间互称兄弟。将这些关系进一步 推广,结点的祖先是从根到该结点所经分支上的所有结点 。反之,以某结点为根的子树中的任一结点都称为该结点 的子孙。如B的子孙为E、F、K和L 。