基本情報技術者
テクノロジ系
リスト(連結リスト)の特徴として適切なものはどれか。
1.
要素へのランダムアクセスが高速
2.
要素の追加・削除が配列より効率的
✓ 正解
3.
メモリを連続した領域に確保する
4.
要素数を変更できない
📝 解説
連結リスト(Linked List)は各要素(ノード)がデータ本体と「次のノードへのポインタ(参照)」を持つデータ構造で、要素を物理的に隣接したメモリに格納する必要がなく、ポインタでつながれた鎖のような構造です。鉄道の車両に例えると、各車両(ノード)が乗客(データ)と「次の車両との連結器(ポインタ)」を持ち、間に車両を追加する場合は連結器を付け替えるだけでOKです。この「途中への要素追加・削除がO(1)で効率的」という点が配列との最大の違いです。一方、配列はインデックスで任意の位置に直接アクセスできる(ランダムアクセスO(1))のが強みですが、途中への挿入・削除にはO(n)かかります。連結リストは特定位置への順次アクセスがO(n)かかる点がデメリットです。誤答の「要素へのランダムアクセスが高速」は配列の特徴、「メモリを連続した領域に確保する」も配列の特徴、「要素数を変更できない」は固定長配列の制約で連結リストは動的にサイズ変更できます。「連結リスト=挿入・削除O(1)・ランダムアクセスO(n)・ポインタで連結」と覚えましょう!