1.やさしい
マージソート(merge sort)はどの設計戦略を用いていますか?
- A貪欲法
- B動的計画法
- C総当たり法
- D分割統治法
2.やさしい
次の実行時間のうち、多項式時間はどれですか?
- AO(n!)
- BO(2ⁿ)
- CO(n³)
- DO(nⁿ)
3.やさしい
再帰とは何ですか?
- A決して終わらないループ
- Bデータ構造の一種
- Cより小さな入力に対して自分自身を呼び出す関数
- Dソートの手法の一つ
4.ふつう
n 要素の配列を一度ソートし、その後 k 回の所属判定クエリに二分探索で答えます。全体のコストは何ですか?
- AO(n log n + k log n)
- BO(nk)
- CO(k n log n)
- DO(n + k)
5.ふつう
比較に基づくソートの最悪の場合の下界はどれですか?
- AΩ(n)
- BΩ(n²)
- CΩ(n log n)
- DΩ(log n)
6.ふつう
辺の重みが非負のグラフで、一つの始点からの最短経路を求めるアルゴリズムはどれですか?
- ADijkstra 法
- B深さ優先探索(DFS)
- CKruskal 法
- Dどの場合でも Bellman–Ford が必要
7.むずかしい
for i = 1 to n: for (j = i; j ≤ n; j = j + i) do O(1) work の時間計算量は何ですか?
- AO(n²)
- BO(n)
- CO(n log n)
- DO(n √n)
8.むずかしい
漸化式 T(n) = 2T(n/2) + n log n の解は何ですか?
- AΘ(n)
- BΘ(n log n)
- CΘ(n log² n)
- DΘ(n²)
解答
- 1. D · 分割統治法
- 2. C · O(n³)
- 3. C · より小さな入力に対して自分自身を呼び出す関数
- 4. A · O(n log n + k log n)
- 5. C · Ω(n log n)
- 6. A · Dijkstra 法
- 7. C · O(n log n)
- 8. C · Θ(n log² n)
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。