【答案解析】 二叉树是非线性数据结构,即每个数据结点至多只有一个前驱,但可以有多个后继,可以使用顺序存储和链式存储两种结构来存储。以下将分别对这两种存储结构进行介绍。
(1)顺序存储结构
二叉树的顺序存储指的是用元素在数组中的下标表示一个结点与其孩子和父结点的关系。这种结构特别适用于近似满二叉树。这种方法的缺点是可能会有大量空间的浪费,在最坏的情况下,一个深度为k且只有k个结点的右单支树需要2^k-1个结点存储空间。图1和图2分别给出完全二叉树和非完全二叉树的存储示意图。

图1 完全二叉树的存储方式

图2 非完全二叉树的存储方式 (2)链式存储结构
二叉树的链式存储结构是指用链表来表示一棵二叉树。
每个结点有一个数据域,两个指针域分别指向左孩子和右孩子。其结点结构为:
图3给出了一个二叉树的链表存储方式。