Title:リスト構造

リスト 順序つけられたデータの並びのこと
配列 単純にデータを並べたもの
連結リスト 各データをポインタでつないだもの




連結リストの種類

単方向リスト 各データは次のデータへのポインタをもつ
双方向リスト 各データは前と後ろのデータへのポインタをもつ
循環リスト 各データは次のデータへのポインタをもち、末尾のデータは、先頭データへのポインタをもつ



Title:データの追加と削除




Head 先頭データへのポインタを格納したもの
Tail 最後尾データへのポインタを格納したもの


スタックとして使用する場合、最後尾データへのポインタをもつTailは不要です。
要素の追加は最後尾、取出しは先頭で行うキュー(FIFO)に適している。

リストのよる2分木の表現

key parent left right


key[p] ノードpのキー値
parent[p] ノードpの親を指すポインタ
left[p] ノードpの左分木を指すポインタ
right[p] ノードpの右分木をしますポインタ