1.やさしい
あるアルゴリズムの実行時間は O(n) です。この増加は何と呼ばれますか?
- A対数的
- B線形
- C定数
- D2 乗
2.やさしい
平均実行時間は何を表しますか?
- A平均的な長さの入力に対する所要時間
- Bサイズ n の入力の与えられた分布に対する期待所要時間
- C最も一般的なコンピュータでの所要時間
- D最良の場合と最悪の場合の実行時間の中間の値
3.やさしい
アルゴリズムとは何ですか?
- A数式を書くために設計されたプログラミング言語
- B問題を解く、明確に定義された手順の有限の列
- C数値を格納するデータ構造
- Dグラフィカルなインターフェースをもつあらゆるコンピュータプログラム
4.ふつう
for i = 1 to n: for j = 1 to i: do O(1) work の時間計算量は何ですか?
- AO(n log n)
- BO(n)
- CO(n³)
- DO(n²)
5.ふつう
漸化式 T(n) = 2T(n − 1) + O(1) の解は何ですか?
- AO(2ⁿ)
- BO(n)
- CO(n²)
- DO(n log n)
6.ふつう
動的計画法がマージソートを実質的に高速化しないのはなぜですか?
- A部分問題が重複しないので、再利用するものがないから
- Bマージソートには再帰的な構造がないから
- Cマージソートはすでに O(n) だから
- D動的計画法はグラフ問題にしか使えず、配列には使えないから
7.むずかしい
一部の辺の重みが負のとき、ダイクストラ法が誤った結果を出すことがあるのはなぜですか?
- A負の辺があるたびに無限ループに陥るから
- B無向グラフでしか動作しないから
- C負の数は優先度付きキューに格納できないから
- D頂点は取り出された時点で確定するが、後の負の辺によってより短い経路が得られる可能性があるから
8.むずかしい
漸化式 T(n) = 2T(n/2) + n log n の解は何ですか?
- AΘ(n)
- BΘ(n log n)
- CΘ(n²)
- DΘ(n log² n)
解答
- 1. B · 線形
- 2. B · サイズ n の入力の与えられた分布に対する期待所要時間
- 3. B · 問題を解く、明確に定義された手順の有限の列
- 4. D · O(n²)
- 5. A · O(2ⁿ)
- 6. A · 部分問題が重複しないので、再利用するものがないから
- 7. D · 頂点は取り出された時点で確定するが、後の負の辺によってより短い経路が得られる可能性があるから
- 8. D · Θ(n log² n)
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。