1.二叉树的顺序存储结构:
完全二叉树:
结点 | A | B | C | D | E | F | G | H | I |
下标 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
n个结点的完全二叉树的结点父子关系:
非根节点:父节点序号下标[i/2]
结点:左孩子序号下标2i 右孩子序号下标2i+1
为了尽可能的提高空间利用效率,顺序存储一般只用于完全二叉树。
2.二叉树的链式存储:
采用一个数据域+两个指针域,这样的话,左指针指向左孩子,右指针指向右孩子。
typedef struct Binnode
{
Telemtype data;
struct Binnode *child1,*chil2;
}Binnode,*Bintree;