1.やさしい
木において、兄弟(sibling)ノードとは何ですか。
- A異なる部分木の同じ深さにあるノード
- B子をもたないノード
- C同じ親をもつノード
- Dあるノードとその親
2.やさしい
「後入れ先出し」(LIFO)の原理で動作するデータ構造はどれですか。
- Aハッシュテーブル(Hash table)
- Bスタック(Stack)
- Cキュー(Queue)
- D連結リスト(Linked list)
3.やさしい
木において、葉(leaf)とは何ですか。
- A子をもたないノード
- B親をもたないノード
- C最大の値をもつノード
- Dちょうど 1 つの子をもつノード
4.ふつう
容量 n の配列に格納された循環キューで、インデックス i の次の位置はどのように計算されますか。
- A(i − 1) mod n
- B(i + 1) mod n
- C2i + 1
- Di + 1
5.ふつう
二分探索木のあるノードが右部分木をもっています。その通りがけ順での次のノード(後続ノード)はどこにありますか。
- A右部分木の最も左のノード
- B左部分木の最も右のノード
- C常にその親
- D常にその右の子
6.ふつう
隣接行列を使って辺 (u, v) が存在するかを調べるのにどれだけ時間がかかりますか。
- AO(V)
- BO(log V)
- CO(E)
- DO(1)
7.むずかしい
ハッシュテーブルが正しく動作するためには、ハッシュと等価性はどの規則に従わなければなりませんか。
- Aハッシュ値は素数でなければならない
- B等しいキーは等しいハッシュ値をもたなければならない
- C異なるキーは異なるハッシュ値をもたなければならない
- Dハッシュ値が等しければキーも等しい
8.むずかしい
配列のサイズ k のすべてのウィンドウの最大値を合計 O(n) で計算できる構造はどれですか。
- A値の降順にインデックスを保持するデック
- Bウィンドウごとに作り直す最小ヒープ
- Cウィンドウの要素の単方向連結リスト
- Dずらすことで更新するソート済み配列
解答
- 1. C · 同じ親をもつノード
- 2. B · スタック(Stack)
- 3. A · 子をもたないノード
- 4. B · (i + 1) mod n
- 5. A · 右部分木の最も左のノード
- 6. D · O(1)
- 7. B · 等しいキーは等しいハッシュ値をもたなければならない
- 8. A · 値の降順にインデックスを保持するデック
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。