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

分野:アルゴリズムとプログラミング|実際に出題されたIPA過去問題

ポインタを用いた線形リストの特徴のうち,適切なものはどれか。

  1.  先頭の要素を根としたn分木で,先頭以外の要素は全て先頭の要素の子である。
  2.  配列を用いた場合と比較して,2分探索を効率的に行うことが可能である。
  3.  ポインタから次の要素を求めるためにハッシュ関数を用いる。
  4.  ポインタによって指定されている要素の後ろに,新たな要素を追加する計算量は,要素の個数や位置によらず一定である。
解答・解説を見る

正解:エ

AI解説

ポインタを用いた線形リストは、各要素が次要素へのポインタを持つデータ構造であり、要素の追加・削除は前後のポインタの繋ぎ替えだけで済むため、挿入位置さえ分かれば要素数や位置によらず一定の計算量で行える。 ア: n分木の説明であり、線形リストは各要素が高々1つの後続要素を持つ一直線の構造であってn分木ではない。 イ: 配列に対する2分探索の説明であり、線形リストは先頭から順にたどるしかなく2分探索を効率的に行うことはできないため誤りである。 ウ: ハッシュ関数を用いるのはハッシュ表(散布法)の説明であり、線形リストはポインタで直接次要素を指すためハッシュ関数は不要である。 エ: 正しい。挿入位置さえ分かれば、要素数や位置に関係なくポインタの付け替えのみで一定の計算量で要素を追加できる。 💡 配列は途中への挿入に要素移動でO(n)の手間がかかるが、線形リストはポインタ操作のみでO(1)という対比で覚えておく。

出典:令和2年度 秋期 応用情報技術者試験 午前 問5 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「アルゴリズムとプログラミング」分野の攻略ポイント

データ構造・アルゴリズム・探索と整列・計算量・擬似言語・プログラム言語・データ記述言語が対象です。擬似言語のトレースは時間はかかるものの、落ち着いて表を書けば必ず正解にたどり着く「確実に取れる」問題です。

アルゴリズムとプログラミングの攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(アルゴリズムとプログラミング)の過去問