解答つきデータ構造ワークシート
無料で印刷できるデータ構造のワークシート:やさしい問題から試験レベルまで 8 問、解答つき。印刷するか PDF で保存できます。
先生方へ: 授業で自由に印刷・コピーしてお使いいただけます。新しいワークシートごとに数値が変わり、専用の解答が付きます。授業ページに ExamProblems へのリンクを載せていただけると嬉しいです。
名前: ____________________ 日付: ____________
1.やさしい
単方向連結リストでは、各ノードに何が含まれていますか。
- Aデータと次のノードへの参照
- Bデータと他のすべてのノードへの参照
- Cデータとインデックス
- Dデータのみ
2.やさしい
無向グラフにおいて、頂点の次数(degree)とは何ですか。
- Aグラフの頂点の数
- Bその頂点からの最長経路の長さ
- C隣接リストにおけるその位置
- Dその頂点につながっている辺の数
3.やさしい
木のレベル順(level-order)走査を行うのに使われるデータ構造はどれですか。
- Aスタック
- B優先度付きキュー
- Cキュー
- Dハッシュテーブル
4.ふつう
実行中のプログラムが、有効な関数呼び出しとそのローカル変数を管理するために使うデータ構造はどれですか。
- Aフレームの二分探索木
- Bコールスタック
- C関数のハッシュテーブル
- Dヒープメモリのキュー
5.ふつう
V 個の頂点と E 本の辺をもつグラフについて、隣接リストはどれだけのメモリを使いますか。
- AO(V + E)
- BO(E²)
- CO(V²)
- DO(V × E)
6.ふつう
循環バッファ(リングバッファ)は一般的に何を実装するために使われますか。
- A二分探索木
- Bグラフ探索
- C固定サイズのキュー
- Dハッシュ関数
7.むずかしい
データベースやファイルシステムで B 木が使われるのはなぜですか。
- A再平衡化が不要だから
- B分岐数が大きいため木が浅く保たれ、遅いディスク読み込みが減るから
- Cデータをソートせずに格納するから
- Dどの配列よりもメモリ使用量が少ないので、索引全体が常に主記憶に収まるから
8.むずかしい
セグメント木は一般的に何に使われますか。
- A区間クエリ(区間和など)と更新を O(log n) で処理する
- Bグラフの辺を格納する
- Cスタックを実装する
- D各接頭辞を別々の木のノードに格納することで、文字列をアルファベット順にソートする
解答
- 1. A · データと次のノードへの参照
- 2. D · その頂点につながっている辺の数
- 3. C · キュー
- 4. B · コールスタック
- 5. A · O(V + E)
- 6. C · 固定サイズのキュー
- 7. B · 分岐数が大きいため木が浅く保たれ、遅いディスク読み込みが減るから
- 8. A · 区間クエリ(区間和など)と更新を O(log n) で処理する
ステップごとの詳しい解答:このトピックは examproblems.com で練習できます。