二叉树
特殊二叉树
- 斜二叉树:除叶子结点外,其余结点都只有左子树或者右子树。
- 完美二叉树或满二叉树:除叶子结点外,其余结点都既有左子树又有右子树。
- 完全二叉树:按从上至下,从左至右的顺序给结点编号,编号为 i 的结点位置与满二叉树中编号为 i 的结点位置相同。
存储结构
可以用顺序存储结构和链式存储结构。
顺序存储结构
用数组进行存储,这样空白结点也需要存储,造成空间浪费。
链式存储结构
相比顺序存储结构,更能节省空间。
typedef struct TreeNode *Position;
typedef Position BinTree;
struct TreeNode{
Element Data;
BinTree Left,Right;
};