記事のディレクトリ
シーケンシャルストレージ表現
データ記憶装置は、例えば、整数です。
// 二叉树的最大节点数
# define MAX_TREE_SIZE 100
//0号单元存储根节点
typedef int SqBiTree[MAX_TREE_SIZE];
SqBiTree bt;
次のように論理的バイナリツリー構造は以下の通りであります:
これは、順次、次の構造を格納します。
バイナリツリーとして必ずしも完全2分木ではないので、私は、あなたは木の仮想ノードを追加する必要があり、親や兄弟を訪問することを願って、子ノード番号。ストレージ構造の上記の欠点から、そうするために見ることができる収納スペースの多くが無駄になっていることです。
だから、チェーンを格納するためのバイナリツリー構造は一般的です。
チェーン店
バイナリリスト
論理構造:
ノード構造:
三叉リスト
論理構造:
ノード構造:
バイナリツリーが含む場合は のノードが、それは内のバイナリリストを指定する必要があります ポインタドメイン必見 空の鎖ドメイン。
証明:
枝の数 、即ち、空でない鎖ドメインが存在します 番目は、それが空の鎖ドメインと等しいです のGe。