戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

応用情報技術者 2013年 秋期 午前206


問題文

葉以外の節点は全て二つの子をもち、根から葉までの深さが全て等しい木を考える。この木に関する記述のうち、適切なものはどれか。ここで、深さとは根から葉に至るまでの枝の個数を表す。また、節点には根及び葉も含まれる。

選択肢

枝の個数がならば、節点の個数もである。
木の深さがならば、葉の個数はである。
節点の個数がならば、深さはである。
葉の個数がならば、葉以外の節点の個数はである。(正解)

🔒 解説は解答すると表示されます

完全二分木の節点関係【午前2解説】

正解の理由

葉以外の節点がすべて2つの子をもち、根から葉までの深さが等しい木は「完全(または完璧な)二分木」です。深さを とすると、葉の個数は 、葉以外(内部)節点の個数は 、したがって内部節点の個数は葉の個数から1を引いた値になります。よって「葉の個数が ならば、葉以外の節点の個数は 」を述べる選択肢 が正しいです。

解法ステップ

  1. 問題文から木の種類を確認する:葉以外の節点が必ず2子を持ち、根から葉までの深さが等しい → 完全二分木(完璧二分木)。
  2. 深さを と置く(深さは根→葉の枝の個数)。
  3. 各深さにおける節点数は幾何級数:深さ0(根)に 、深さ1に … 深さ
  4. 葉の個数 、内部節点数 、総節点数 を使って各選択肢を検証する。

選択肢別の誤答解説

  • ア: 「枝の個数が ならば、節点の個数も である。」
    どの木でも(連結な木の定義により)枝の個数 と節点の個数 の関係が成り立ちます。従って枝数が なら節点数は であり、選択肢は誤りです。例:単純な根付き木で枝1本なら節点は2個。
  • イ: 「木の深さが ならば、葉の個数は である。」
    深さを とすると、葉の個数は です(根を深さ0とする場合)。選択肢は指数の指数部が1小さいため誤りです。例えば深さ1のとき葉は 個だが、選択肢は として矛盾します。
  • ウ: 「節点の個数が ならば、深さは である。」
    完全二分木の総節点数は なので、深さ は次の式で与えられます:
    したがって とは異なります。たとえば のとき正しい深さは だが、 となり整数にならないため選択肢は誤りです。選択肢ウは近似的に似ていることがあっても(大きな では違いが相対的に小さく見える)厳密には誤りです。
  • エ: 「葉の個数が ならば、葉以外の節点の個数は である。」
    深さ のとき葉 、内部節点 より が成立します。したがって選択肢 は正しい説明です。

よくある誤解

  • 深さ(depth)を「節点数で数えるか、枝の数で数えるか」を混同する。今回の定義は「根から葉までの枝の個数」であり、根を深さ0とする表現に対応する。
  • 「完全(完璧)二分木」と「完全二分探索木(完全性の別概念)」を混同する人がいる。ここで扱うのは構造が全層で満たされた二分木のこと。
  • 近似的な式(例:)を厳密解として使ってしまう。整数性や定数項を忘れないこと。

補足コラム

主要な関係式(深さ 、葉 、内部節点 、総節点 、枝 ):
  • 葉:
  • 内部節点:
  • 総節点:
  • 枝の個数:
短いPython例(深さ から各値を計算):
def perfect_binary_tree(h):
    L = 2**h           # 葉
    I = 2**h - 1       # 内部節点
    N = 2**(h+1) - 1   # 総節点
    E = N - 1          # 枝
    return {'depth':h,'leaves':L,'internal':I,'nodes':N,'edges':E}

FAQ

Q1: 深さを「節点数で数える(根を1とする)」場合、式はどう変わりますか?
A1: 根を深さ1とするならば深さを として 。葉は 、総節点は などに置き換えて使います。
Q2: 「完全二分木」と「完全(complete)二分木」は同じですか?
A2: 用語の揺れがありますが、ここでの条件(全ての内部節点が2子を持ち、すべての葉の深さが等しい)は「perfect binary tree(完璧二分木)」と呼ばれることが多い点に注意してください。
Q3: 試験で素早く判定するコツは?
A3: 「葉の深さが等しい」なら葉の個数は必ず 。これを基準に選択肢の指数表現や の違いを確認すると速く判断できます。

関連キーワード: 完全二分木、深さと節点数、葉の個数、二分木の公式、木構造の性質
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

応用情報技術者
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について