Title:リスト構造
リスト | 順序つけられたデータの並びのこと |
配列 | 単純にデータを並べたもの |
連結リスト | 各データをポインタでつないだもの |
連結リストの種類
単方向リスト | 各データは次のデータへのポインタをもつ |
双方向リスト | 各データは前と後ろのデータへのポインタをもつ |
循環リスト | 各データは次のデータへのポインタをもち、末尾のデータは、先頭データへのポインタをもつ |
Title:データの追加と削除
Head | 先頭データへのポインタを格納したもの |
Tail | 最後尾データへのポインタを格納したもの |
スタックとして使用する場合、最後尾データへのポインタをもつTailは不要です。
要素の追加は最後尾、取出しは先頭で行うキュー(FIFO)に適している。
リストのよる2分木の表現
key | parent | left | right |
key[p] | ノードpのキー値 |
parent[p] | ノードpの親を指すポインタ |
left[p] | ノードpの左分木を指すポインタ |
right[p] | ノードpの右分木をしますポインタ |