リスト:データをポインターを使って数珠つなぎに構成させたデータ構造

各データには、次のデータがどれかを示すポインターが付加される

リストの最後はnullか0を入力

 

■双方向リスト

データの前にもポインタを持たせる(前ポインタと次ポインタをもつ)

■循環リスト
単方向リストの最後をnullではなく最初のアドレスを乳リュクし、循環させる

  <データの追加・削除> <ポインタを書き換えることで追加削除が可能 

  ポインタ 配列
領域 要素数に応じたメモリ領域を確保すればよいので効率的 連続した多くの領域が必要
最大の要素数に応じたメモリ領域を確保するため、使われない領域が発生する場合がある
検索 先頭のポインタからたどっていくので遅い ランダムアクセス(直接アクセス)できるので高速
更新 先頭のポインタをたどって目的のデータまで到達するので、更新にかかる時間は長い ランダムアクセスで目的のデータまでたどり着けるので、更新にかかる時間は短い
挿入・削除 挿入あるいは削除されるデータの前後のポインタを操作するので、データ量にかかわらず一定の時間で処理が行える 挿入する場合、追加されたで0便り後のデータを後ろに移動する必要がある・
削除する場合、削除されたデータより後のデータを前に詰める必要がある
挿入・削除に時間がかかる

00

 

In