IPA過去問ドリル

平成31年度 春期 応用情報技術者試験 午前 問5

テクノロジ/ソフトウェア

要求に応じて可変量のメモリを割り当てるメモリ管理方式がある。要求量以上の大きさをもつ空き領域のうちで最小のものを割り当てる最適適合(best-fit)アルゴリズムを用いる場合,空き領域を管理するためのデータ構造として,メモリ割当て時の平均処理時間が最も短いものはどれか。

出典:平成31年度 春期 応用情報技術者試験 午前 問5

正解:ウ

解説

最適適合(best-fit)では「要求量以上の大きさをもつ空き領域のうち最小のもの」を探す必要があります。空き領域の大きさをキーとする2分探索木で管理すれば,この条件を満たす領域を木の高さ,すなわち領域数 n に対して log n に比例する時間で探索できます。線形探索が必要な連結リストやビットマップ,大きさの順序が反映されないアドレスキーの木より平均処理時間が短くなります。

選択肢ごとの解説

  • 誤り。アドレスをキーとする2分探索木では大きさの順序が反映されないため,条件を満たす最小の領域を見つけるには全ての空き領域を走査する必要があります。
  • 誤り。大きさが小さい順の片方向連結リストは先頭から順に走査するので,平均で領域数に比例した時間がかかります。
  • 正しい。大きさをキーとする2分探索木なら,要求量以上で最小の空き領域を木の高さ(log n)に比例する時間で探索できます。
  • 誤り。ビットマップは各ブロックの使用・未使用を1ビットで表すだけなので,最小の空き領域を求めるにはビットマップ全体を走査する必要があります。
応用情報技術者の過去問を演習モードで解く