リスト:データをポインターを使って数珠つなぎに構成させたデータ構造
各データには、次のデータがどれかを示すポインターが付加される
リストの最後はnullか0を入力
■双方向リスト
データの前にもポインタを持たせる(前ポインタと次ポインタをもつ)
■循環リスト
単方向リストの最後をnullではなく最初のアドレスを乳リュクし、循環させる
<データの追加・削除> <ポインタを書き換えることで追加削除が可能
| ポインタ | 配列 | |
|---|---|---|
| 領域 | 要素数に応じたメモリ領域を確保すればよいので効率的 | 連続した多くの領域が必要 最大の要素数に応じたメモリ領域を確保するため、使われない領域が発生する場合がある |
| 検索 | 先頭のポインタからたどっていくので遅い | ランダムアクセス(直接アクセス)できるので高速 |
| 更新 | 先頭のポインタをたどって目的のデータまで到達するので、更新にかかる時間は長い | ランダムアクセスで目的のデータまでたどり着けるので、更新にかかる時間は短い |
| 挿入・削除 | 挿入あるいは削除されるデータの前後のポインタを操作するので、データ量にかかわらず一定の時間で処理が行える | 挿入する場合、追加されたで0便り後のデータを後ろに移動する必要がある・ 削除する場合、削除されたデータより後のデータを前に詰める必要がある 挿入・削除に時間がかかる |
00
絶対おいしい!札幌ラーメン
In