第1種情報処理技術者試験 1998年度 = 平成10年度 午前 問45

 関係データベースの表において、データ値が重複している項目の検索効率を向上させるためにインデックスを付与する。次のア~エは、データ値が等しい行の数を示したものである。このア~エのうち、データ値にインデックスを付与することによって、1項目当たりの平均の検索効率が最も向上するものはどれか。


データの値行の数
A600
B600


データの値行の数
A1000
B200

データの値行の数
A20
B40
C80
D160
E300
F600
データの値行の数
A200
B200
C200
D200
E200
F200

解答



解説

 インデックスがなければ順次探索となります。たとえば、1200行あれば、検索のための比較回数は平均して600回となります。
 インデックスが存在すると、効率よく検索できることになるはずですが、重複したデータ値をもつ行に対しては、順次探索を適用せざるを得ません。
 2種類のデータ値しかもたないよりも、6種類のデータ値をもつのほうが、検索効率は向上しますので、後者のみを検討することにします。
 選択肢の平均比較回数は、

  20×10 + 40×20 + 80×40 + 160×80 + 300×150 + 600×300      ──────────────────────────────── ≒ 202                 1200

であり、選択肢の平均比較回数は、

  200×100 + 200×100 + 200×100 + 200×100 + 200×100 + 200×100      ─────────────────────────────────── = 100                 1200

ですから、正解はです。


BohYoh.comトップページへ