1. 程式人生 > >資料結構作業12—樹和森林(選擇題)

資料結構作業12—樹和森林(選擇題)

2-1下列線索二叉樹中(用虛線表示線索),符合後序線索樹定義的是: (2分)

  • A
    在這裡插入圖片描述
  • B
    在這裡插入圖片描述
  • C
    在這裡插入圖片描述
  • D
    在這裡插入圖片描述

作者: DS課程組
單位: 浙江大學

2-2將森林轉換為對應的二叉樹,若在二叉樹中,結點u是結點v的父結點的父結點,則在原來的森林中,u和v可能具有的關係是: (3分)
   1.父子關係; 2. 兄弟關係; 3. u的父結點與v的父結點是兄弟關係

  • A.1、2和3
  • B.1和3
  • C.1和2
  • D.只有2

作者: DS課程組
單位: 浙江大學

2-3具有65個結點的完全二叉樹其深度為(根的深度為1): (3分)

  • A.5
  • B.6
  • C.7
  • D.8

作者: DS課程組
單位: 浙江大學

2-4已知一棵完全二叉樹的第6層(設根為第1層)有8個葉結點,則該完全二叉樹的結點個數最多是: (3分)

  • A.119
  • B.52
  • C.111
  • D.39
    注:即第六層有32個節點,其中有8個是葉子節點,說明其餘24個是有子節點的,又由於是完全二叉樹,所以那24個節點每個節點有2個子節點,共計48個節點,也就是第七層的節點有48個,所以前六層的63加第七層的48就是111個節點了

作者: DS課程組
單位: 浙江大學

2-5具有1102個結點的完全二叉樹一定有__個葉子結點。(3分)

  • A.1063
  • B.551
  • C.不確定
  • D.79
    注:設n2為度為2的節點,n1為度為1的節點,n0為度為0的節點;
    邊數n=節點數-1,即n=1101;
    n=2n2+n1;
    完全二叉樹度為1的節點只能有0個或1個(不信可以畫畫看一下)
    所以n1=0或者1用n=2
    n2+n1;算一下,n2肯定是整數,把0捨去;
    求出n2=550;
    度為0的節點數等於度為2的節點數+1;
    所以葉子節點數為551

作者: 何欽銘
單位: 浙江大學

2-6由若干個二叉樹組成的森林F中,葉結點總個數為N,度為2的結點總個數為M,則該集合中二叉樹的個數為: (3分)

  • A.N−M−1
  • B.無法確定
  • C.N−M
  • D.M−N

作者: DS課程組
單位: 浙江大學

2-7若森林F有15條邊、25個結點,則F包含樹的個數是:(2分)

  • A.11
  • B.10
  • C.9
  • D.8
    注:分析:森林中樹的個數與結點數的關係推導。
    先看一般性的解決策略:根據一棵樹的邊數+1=結點數。
    可以知道,每多一棵樹,結點數就少一個。
    即,
    一棵樹時,邊數 = 結點數-1
    兩棵樹時,邊數 = 結點數-2
    ….
    n棵樹時,邊數 = 結點數-n
    於是得到:25-15 = 10.
    有時候,可能過於關注區域性特徵,沒能體會到巨集觀的特性。但是可用特值迅速解決:15條邊全是一棵樹的,那麼這棵樹有16個結點,剩下9個結點都不再形成邊,即一個結點算一棵樹。那麼,共1+9 = 10棵樹。

原文解析:https://blog.csdn.net/u011240016/article/details/53260683

作者: DS課程組
單位: 浙江大學

2-8設森林F中有三棵樹,第一、第二、第三棵樹的結點個數分別為M1,M2​​ 和M​3​​ 。則與森林F對應的二叉樹根結點的右子樹上的結點個數是: (2分)

  • A.M3
  • B.M2​​ +M​3
  • C.M1​​ +M​2
  • D.M​1
    注:第一棵樹構成根和左子樹,因此右子樹上的結點個數就是M2 + M3

作者: DS課程組
單位: 浙江大學

2-9在一個用陣列表示的完全二叉樹中,如果根結點下標為1,那麼下標為17和19這兩個結點的最近公共祖先結點在哪裡(陣列下標)? (注:兩個結點的“公共祖先結點”是指同時都是這兩個結點祖先的結點) (3分)

  • A.2
  • B.1
  • C.4
  • D.8

作者: DS課程組
單位: 浙江大學

2-10對於一個有N個結點、K條邊的森林,共有幾棵樹? (2分)

  • A.N−K−1
  • B.不能確定
  • C.N−K+1
  • D.N−K
    注:邊數 = 結點數-樹數

作者: DS課程組
單位: 浙江大學