1.やさしい
O(2ⁿ) の増加は何と呼ばれますか?
- A対数的
- B線形
- C指数的
- D多項式的
2.やさしい
n 個の数からなる未ソートの配列で最大値を見つける時間計算量は何ですか?
- AO(1)
- BO(n)
- CO(log n)
- DO(n log n)
3.やさしい
f(n) = Θ(g(n)) はどういう意味ですか?
- Aすべての n について f は常に g より小さいので、g は上からは抑えるが下からは決して抑えない
- Bf は g より真に速く増加する
- Cf は g より真に遅く増加する
- Df は g と同じ速さで増加し、上下から g の定数倍で抑えられる
4.ふつう
比較に基づくソートの最悪の場合の下界はどれですか?
- AΩ(n log n)
- BΩ(n)
- CΩ(log n)
- DΩ(n²)
5.ふつう
ボトムアップの表を使って n 番目のフィボナッチ数を計算する時間計算量は何ですか?
- AO(log n)
- BO(2ⁿ)
- CO(n²)
- DO(n)
6.ふつう
O(log n) のように、Big O で対数の底が通常省略されるのはなぜですか?
- A計算機科学のすべての対数は底が 10 なので、省略されているから
- B対数は常に整数に丸められるから
- C底は n が小さいときにしか問題にならないから
- D底の異なる対数は定数倍しか違わないから
7.むずかしい
挿入ソートはソート済みの入力に対して O(n) で動作します。これは比較ソートの Ω(n log n) の下界と矛盾しますか?
- Aいいえ。挿入ソートは比較ソートではないから
- Bいいえ。下界はすべての入力にわたる最悪の場合に適用されるのであって、すべての入力に適用されるわけではない
- Cはい。ただし 100 より短い配列の場合に限る
- Dはい。したがって下界は誤りである
8.むずかしい
ベルマン-フォード法は、始点から到達可能な負の重みの閉路をどのように検出しますか?
- Aダイクストラ法を 2 回実行し、2 つの距離の結果を比べる
- B深さ優先探索で閉路を数える
- CV − 1 回のラウンドの後、まだ緩和できる辺があるかどうかを調べる
- D負の重みをもつ辺があるかどうかを調べる
解答
- 1. C · 指数的
- 2. B · O(n)
- 3. D · f は g と同じ速さで増加し、上下から g の定数倍で抑えられる
- 4. A · Ω(n log n)
- 5. D · O(n)
- 6. D · 底の異なる対数は定数倍しか違わないから
- 7. B · いいえ。下界はすべての入力にわたる最悪の場合に適用されるのであって、すべての入力に適用されるわけではない
- 8. C · V − 1 回のラウンドの後、まだ緩和できる辺があるかどうかを調べる
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。