1.やさしい
n 個の要素を持つ未ソートの配列に対する線形探索(linear search)の時間計算量(最悪の場合)は何ですか?
- AO(1)
- BO(n)
- CO(log n)
- DO(n²)
2.やさしい
n が大きくなるとき、最もゆっくり増加するのはどれですか?
- AO(n log n)
- BO(n)
- CO(n²)
- DO(log n)
3.やさしい
あるアルゴリズムの実行時間は O(n) です。この増加は何と呼ばれますか?
- A線形
- B定数
- C2 乗
- D対数的
4.ふつう
重みなしグラフでの幅優先探索(BFS)で求められるものはどれですか?
- A始点ノードからの辺の数で測った最短経路
- B最小全域木
- C負の辺の重みを含むグラフでの最短経路
- Dすべてのグラフにおけるトポロジカル順序
5.ふつう
長さ m と n の文字列の最長共通部分列を求める標準的な動的計画法の時間計算量は何ですか?
- AO(mn log n)
- BO(mn)
- CO(2m+n)
- DO(m + n)
6.ふつう
多くのライブラリのソート関数が、非常に小さな部分配列では挿入ソートに切り替えるのはなぜですか?
- A挿入ソートは最悪の場合 O(n log n) だから
- B大きな入力では、挿入ソートは他のどのソートアルゴリズムよりメモリが少なくて済むから
- C挿入ソートはオーバーヘッドが小さく、小さな入力やほぼソート済みの入力で速いから
- D再帰アルゴリズムは 10 要素未満の配列を扱えないから
7.むずかしい
log(n!) について正しい評価はどれですか?
- AΘ(n)
- BΘ(n log n)
- CΘ(log n)
- DΘ(n²)
8.むずかしい
最短単純路は多項式時間で見つけられます。一般のグラフで 2 頂点間の最長単純路を見つけることについて、何が知られていますか?
- A決定不能である
- B重みの符号を反転すればダイクストラ法で解ける
- C常に O(V + E) で解ける
- DNP 困難である
解答
- 1. B · O(n)
- 2. D · O(log n)
- 3. A · 線形
- 4. A · 始点ノードからの辺の数で測った最短経路
- 5. B · O(mn)
- 6. C · 挿入ソートはオーバーヘッドが小さく、小さな入力やほぼソート済みの入力で速いから
- 7. B · Θ(n log n)
- 8. D · NP 困難である
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。