連結リスト(linked list)
リンク(link)オブジェクトには、データと次のリンクを指す参照(ポインタ)(
next
と名づけられることが多い)が格納されており、 リストの終端の
next
には
null
が格納される
スタックやキュー等のデータ構造の実装に良く用いられる
双端リスト(double-ended list)
、
ソート済みリスト(sorted list)
、
双方向連結リスト(doubly linked list)
等がある
連結リスト(linked list)
New
サイズを指定して新しいリストを作る
Ins
ert
新たなデータをリストの先頭/しかるべき場所に挿入する
Find
指定されたデータを探索する
Del
ete
指定されたデータを削除する
Unsorted/Sorted
未ソートかソート済み(sorted)か
ソート済みリスト(sorted list)
ソート済み配列よりもソート済みリストの方が挿入が速い
プライオリティキュー
の実装にも使える
双端リスト(double-ended list)
リストの先頭を指す参照(
first
)以外に、 終端のリンクを指す参照(
last
と名付けられることが多い)を持っている
リストの終端への挿入が速い
キュー(queue)
の実装に用いられる
双方向連結リスト(doubly linked list)
次(
next
)に加えて直前(
previous
)にも辿れるリスト
双方向の走査(traversal)やリストの終端の削除ができる