「木構造とグラフ構造ってどちらもノードと線で表されるデータ構造だよね?」
応用情報技術者試験でもデータ構造分野で頻出ですが、
- 何が違うの?
- 木構造はグラフの一種?
- ループは作れる?
- どんな場面で使うの?
で混乱する人がかなり多いテーマです。
この記事では、
- 木構造とは?
- グラフ構造とは?
- 違い
- 利用例
- 試験での頻出ポイント
を分かりやすく解説します!
まず結論
木構造
「親子関係を持つ階層構造」
グラフ構造
「ノード同士を自由につなぐ構造」
超簡単にいうと
| データ構造 | 特徴 |
|---|---|
| 木構造 | 階層型 |
| グラフ構造 | ネットワーク型 |
木構造とは?
超頻出!
特徴
データを
親子関係
で管理する。
イメージ
A
/ \
B C
/ \
D E
用語
重要!
ルート(Root)
一番上のノード
親ノード
上位ノード
子ノード
下位ノード
葉(Leaf)
子を持たないノード
特徴
超重要!
親は1つだけ
ループしない
利用例
- フォルダ構造
- 組織図
- XML
- HTML
グラフ構造とは?
超頻出!
特徴
ノード同士を
自由に接続できる。
イメージ
A-----B
| \ |
| \ |
C-----D
用語
重要!
ノード(頂点)
データ
エッジ(辺)
接続線
特徴
超重要!
親子関係不要
ループ可能
複数経路あり
利用例
- SNSの友達関係
- 道路網
- 鉄道路線
- 通信ネットワーク
木構造とグラフ構造の違い
超頻出!
| 比較 | 木構造 | グラフ構造 |
|---|---|---|
| 構造 | 階層型 | ネットワーク型 |
| 親ノード | 1つ | 制限なし |
| ループ | 不可 | 可能 |
| 経路 | 基本1つ | 複数あり |
| 利用例 | フォルダ | SNS |
イメージで理解
木構造
会社
├営業部
├開発部
└総務部
組織図のような形。
グラフ構造
Aさん
↔ Bさん
↔ Cさん
↔ Dさん
友達関係のような形。
実は木構造はグラフの一種
発展知識!
木構造は
グラフ構造の特殊形
である。
条件
- ループなし
- 階層構造
- 親が1つ
を満たしたグラフが木構造。
応用情報で頻出
重要!
木探索
二分木
B木
グラフ探索
幅優先探索
深さ優先探索
試験での覚え方
超重要!
木構造
家系図
グラフ構造
路線図
よくあるひっかけ
「木構造はループできる」
→ ❌違う!
木構造は
ループ禁止
ループがあると木構造ではない。
応用情報で超頻出
かなり狙われる👇
- 木構造
- グラフ構造
- ルート
- 葉ノード
- 深さ優先探索
- 幅優先探索
1分で復習!
木構造
階層構造
グラフ構造
ネットワーク構造
木構造
親は1つ
グラフ構造
自由に接続
超重要
木=組織図
グラフ=路線図
練習問題
問題
木構造の特徴として最も適切なものはどれか。
ア
ノード間にループを持つ
イ
親ノードを複数持てる
ウ
階層構造を持ち、ループが存在しない
エ
すべてのノードが互いに接続される
解答
正解:ウ
解説
木構造は階層的なデータ構造であり、各ノードは原則として1つの親を持ち、ループを形成しません。
まとめ
木構造とは
「親子関係を持つ階層構造」
グラフ構造とは
「ノード同士を自由に接続する構造」
超重要
- 木構造=階層型
- グラフ構造=ネットワーク型
- 木構造=ループなし
- グラフ構造=ループ可能
- 木構造はグラフ構造の一種
まずは、
「木構造=組織図」
「グラフ構造=路線図」
このイメージを持つとかなり理解しやすくなります!
知識に自信ができた方は、今度は自身のキャリアアップに向けて準備してみませんか?

未経験から、ITエンジニアへ。
「IT業界に興味はあるけれど、自分にできるか不安」「何から始めればいいのか分からない」そんな方のために、Tech GO は未経験からのIT転職を専門的にサポートします。求人を紹介するだけではなく、あなたの強みを整理し、応募準備から入社後の成…
まずは無料でキャリア相談

コメント