1.やさしい
アルゴリズムの最悪実行時間は何を表しますか?
- A最小の入力に対する所要時間
- Bサイズ n のすべての入力にわたる最大の所要時間
- C遅いコンピュータでの所要時間
- Dサイズ n のランダムな入力に対する期待所要時間
2.やさしい
あるアルゴリズムの実行時間は O(n) です。この増加は何と呼ばれますか?
- A線形
- B2 乗
- C定数
- D対数的
3.やさしい
ある O(n) アルゴリズムは n = 100 万で 3 秒かかります。n = 200 万ではおよそ何秒かかりますか?
- A6 秒
- B3 秒
- C9 秒
- D12 秒
4.ふつう
問題が最適部分構造をもつとはどういう意味ですか?
- A問題を定数時間で解ける
- B最適解を部分問題の最適解から構成できる
- Cすべての部分問題が同じサイズである
- D問題の最適解がちょうど 1 つで、すべての部分問題がそれを共有しているから
5.ふつう
単純な再帰の階乗関数 fact(n) = n × fact(n − 1) はどれだけのスタック領域を使いますか?
- AO(n²)
- BO(n)
- CO(log n)
- DO(1)
6.ふつう
動的計画法がマージソートを実質的に高速化しないのはなぜですか?
- A部分問題が重複しないので、再利用するものがないから
- Bマージソートはすでに O(n) だから
- C動的計画法はグラフ問題にしか使えず、配列には使えないから
- Dマージソートには再帰的な構造がないから
7.むずかしい
閉路を作らない最も安い辺を繰り返し追加して最小全域木を求めるアルゴリズムはどれですか?
- A一つのノードから始める Prim 法
- BDijkstra 法
- CFloyd–Warshall
- DKruskal 法
8.むずかしい
最短単純路は多項式時間で見つけられます。一般のグラフで 2 頂点間の最長単純路を見つけることについて、何が知られていますか?
- A決定不能である
- B常に O(V + E) で解ける
- C重みの符号を反転すればダイクストラ法で解ける
- DNP 困難である
解答
- 1. B · サイズ n のすべての入力にわたる最大の所要時間
- 2. A · 線形
- 3. A · 6 秒
- 4. B · 最適解を部分問題の最適解から構成できる
- 5. B · O(n)
- 6. A · 部分問題が重複しないので、再利用するものがないから
- 7. D · Kruskal 法
- 8. D · NP 困難である
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。