IPA過去問ドリル

令和4年度 春期 応用情報技術者試験 午前 問5

テクノロジ/アルゴリズム

リストには,配列で実現する場合とポインタで実現する場合とがある。リストを配列で実現した場合の特徴として,適切なものはどれか。ここで,配列を用いたリストは配列に要素を連続して格納することによってリストを構成し,ポインタを用いたリストは要素と次の要素へのポインタを用いることによってリストを構成するものとする。

出典:令和4年度 春期 応用情報技術者試験 午前 問5

正解:ア

解説

配列によるリストは,あらかじめ最大要素数分の連続領域を確保して要素を詰めて格納します。そのため実際の要素数が少ないと未使用領域が生じます。一方,添字で直接アクセスできるため中間要素の参照は一定時間で行えますが,挿入・削除では後続要素の移動が必要です。

選択肢ごとの解説

  • 正しい。配列は最大個数に対応した領域をあらかじめ確保するため,要素数が少ないときは使用されない領域が発生する可能性があります。
  • 誤り。先頭から順にたどる必要があるのはポインタを用いたリストの特徴です。配列では添字によって中間要素に一定時間でアクセスできます。
  • 誤り。次の要素を指すポインタ領域が別途必要になるのは,ポインタを用いたリストの特徴です。
  • 誤り。配列への挿入は挿入位置以降の要素を後ろへずらす必要があるため,要素数に比例した時間が掛かります。一定時間で挿入できるのはポインタを用いたリストです。
応用情報技術者の過去問を演習モードで解く