双方向リストとは?
双方向リストとは、各要素が次の要素へのポインタに加えて前の要素へのポインタも持つ連結リスト。両方向にたどれるため、ある要素を指すポインタさえあれば前の要素を探し直さずに削除できる。ポインタが2本必要なぶん記憶領域は増える。
基本情報技術者試験の過去問では1回出題されています。
そうほうこうりすと
双方向リストの意味
各要素が次の要素へのポインタに加えて前の要素へのポインタも持つ連結リスト。両方向にたどれるため、ある要素を指すポインタさえあれば前の要素を探し直さずに削除できる。ポインタが2本必要なぶん記憶領域は増える。
双方向リストの具体例
A⇄B⇄Cという並びでBを削除するには、Aの「次」をCへ、Cの「前」をAへ張り替える。片方向リストなら「Bの前はA」を知るために先頭からたどり直す必要があるが、双方向ならBの前ポインタから即座に分かる。
双方向リストは試験でどう引っ掛けられる?
ポインタの張り替えは前後2か所を必ず両方直す必要があり、片方だけ直す手順の選択肢が誤答として出る。また先頭・末尾の要素では相手側のポインタがナルになる(環状リストなら先頭と末尾がつながる)点も問われる。
双方向リストと関連する用語
双方向リストが出た過去問
双方向のポインタをもつリスト構造のデータを表に示す。この表において新たな社員Gを社員Aと社員Kの間に追加する。追加後の表のポインタa〜fの中で追加前と比べて値が…
正解:a, f
要点:双方向リスト挿入で変わるのは前後2本のポインタだけ
双方向リストの途中に要素を挿入するとき、値が変わるのは挿入位置の前後にある既存要素のポインタだけである。前側の要素では次ポインタが新要素を指すように変わり、後側の要素では前ポインタが新要素を指すように変わる。前側の前ポインタと後側の次ポインタは影響を受けない。したがって変化するのは社員Aの次ポインタと社員Kの前ポインタの二つになる。
出典:令和5年度 (公開問題) 基本情報技術者試験 kamokuA 問2(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。