1.やさしい
f(n) = Θ(g(n)) はどういう意味ですか?
- Aすべての n について f は常に g より小さいので、g は上からは抑えるが下からは決して抑えない
- Bf は g より真に速く増加する
- Cf は g より真に遅く増加する
- Df は g と同じ速さで増加し、上下から g の定数倍で抑えられる
2.やさしい
増加の下界(lower bound)を表す記法はどれですか?
- Ao(little o)
- BΩ(Big Omega)
- CO(Big O)
- DΘ(Big Theta)
3.やさしい
挿入ソート(insertion sort)の最悪時間計算量は何ですか?
- AO(n)
- BO(log n)
- CO(n log n)
- DO(n²)
4.ふつう
到達可能な基底部をもたない再帰関数について、正しい記述はどれですか?
- Aコールスタックがオーバーフローするまで自分自身を呼び続ける
- BO(1) 時間で動作する
- C自動的に 0 を返す
- Dコンパイラが常にそれを、安全に終了するループに変換する
5.ふつう
V 個の頂点と E 本の辺をもつグラフに対するベルマン-フォード法の時間計算量は何ですか?
- AO(V³ × E)
- BO(V × E)
- CO(V + E)
- DO(E log V)
6.ふつう
for i = 1 to n: (j = 1; while j < n: j = j × 2) の時間計算量は何ですか?
- AO(n²)
- BO(n log n)
- CO(log n)
- DO(n)
7.むずかしい
決定不能な問題と扱いにくい問題の違いは何ですか?
- A扱いにくい問題はどのアルゴリズムでも解けず、決定不能な問題は指数時間を必要とするだけである
- Bどちらもアルゴリズムがまったくないことを意味する
- C決定不能な問題は NP に属し、扱いにくい問題は P に属する
- D決定不能な問題にはすべての入力で解くアルゴリズムがなく、扱いにくい問題にはあるが遅すぎる
8.むずかしい
トポロジカルソートが可能なのは、次のどのグラフだけですか?
- A負の重みを持つグラフ
- B完全グラフ
- C無向グラフ
- D有向非巡回グラフ(DAG)
解答
- 1. D · f は g と同じ速さで増加し、上下から g の定数倍で抑えられる
- 2. B · Ω(Big Omega)
- 3. D · O(n²)
- 4. A · コールスタックがオーバーフローするまで自分自身を呼び続ける
- 5. B · O(V × E)
- 6. B · O(n log n)
- 7. D · 決定不能な問題にはすべての入力で解くアルゴリズムがなく、扱いにくい問題にはあるが遅すぎる
- 8. D · 有向非巡回グラフ(DAG)
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。