顺序存储
使用数组进行存储
比较适合完全二叉树使用
结点i的父结点的序号是i/2 i非根结点
结点i的左子结点的序号是2i (2i<=n,否则无左子结点)
结点i的右子结点的序号是2i+1 (2i+1<=n,否则无右子结点)
对于非完全二叉树,可将无结点的位置记为空
链表存储
对于一般二叉树,使用顺序存储会造成空间的浪费
链式存储是使用链表进行存储
typedef struct TreeNode *BinTree;
typedef BinTree Position;
struct TreeNode
{
int data;
BinTree left;
BinTree right;
};