1.やさしい
増加の下界(lower bound)を表す記法はどれですか?
- Ao(little o)
- BΩ(Big Omega)
- CO(Big O)
- DΘ(Big Theta)
2.やさしい
配列の要素にインデックスでアクセスするのにかかる時間は次のどれですか?
- AO(n)
- BO(n²)
- CO(1)
- DO(log n)
3.やさしい
あるアルゴリズムの実行時間は O(n) です。この増加は何と呼ばれますか?
- A定数
- B線形
- C対数的
- D2 乗
4.ふつう
素朴な再帰によるフィボナッチ(fib(n) = fib(n−1) + fib(n−2))の時間計算量はどれですか?
- A線形時間
- B定数時間
- C指数時間
- D対数時間
5.ふつう
ならし解析(amortised analysis)は何を測りますか?
- A最良の入力に対するアルゴリズムのコスト
- B操作列のどこかにある、最もコストの高い 1 回の操作のコスト
- Cランダムな入力に対する期待コスト
- D最悪の操作列にわたる操作 1 回あたりの平均コスト
6.ふつう
貪欲法(greedy algorithm)の説明として正しいものはどれですか?
- A各ステップで局所的に最良の選択をする
- B可能なすべての解を試す
- C常に最適解を与える
- D再帰のみを使用する
7.むずかしい
挿入ソートはソート済みの入力に対して O(n) で動作します。これは比較ソートの Ω(n log n) の下界と矛盾しますか?
- Aいいえ。挿入ソートは比較ソートではないから
- Bいいえ。下界はすべての入力にわたる最悪の場合に適用されるのであって、すべての入力に適用されるわけではない
- Cはい。ただし 100 より短い配列の場合に限る
- Dはい。したがって下界は誤りである
8.むずかしい
log(n!) について正しい評価はどれですか?
- AΘ(log n)
- BΘ(n²)
- CΘ(n)
- DΘ(n log n)
解答
- 1. B · Ω(Big Omega)
- 2. C · O(1)
- 3. B · 線形
- 4. C · 指数時間
- 5. D · 最悪の操作列にわたる操作 1 回あたりの平均コスト
- 6. A · 各ステップで局所的に最良の選択をする
- 7. B · いいえ。下界はすべての入力にわたる最悪の場合に適用されるのであって、すべての入力に適用されるわけではない
- 8. D · Θ(n log n)
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。