作業13 樹與森林

2021-10-11 07:42:34 字數 2081 閱讀 7753

1-1

對於乙個有n個結點、k條邊的森林,不能確定它共有幾棵樹。(f)

[解析]設邊的數目 edgenum, 樹的數目為 treenum

根據 nodenum - 1 = edgenum

所以 (nodenum1 - 1) + … + (nodenumi - 1) = k

即 n - treenum = k

2-3將森林轉換為對應的二叉樹,若在二叉樹中,

結點u是結點v的父結點的父結點,則在原來的森林中,

u和v可能具有的關係是:(b)

父子關係; 2. 兄弟關係; 3. u的父結點與v的父結點是兄弟關係

a.只有2

b.1和2

c.1和3

d.1、2和3

[解析]注意,題目給出的條件是在二叉樹中的父子關係,

並非原森林中的結點之間的父子關係

以u為根節點做一棵層數為3的滿二叉樹(結點u本應在一棵完整的

二叉樹中,但是可以單獨拿出來分析),結點v出現在第三層中,

在二叉樹的第三層中,所有位置能夠產生的關係

依次為 (1)父子關係(爺爺-孫子), (2)父子關係,

(3)結點v的父親節點和u是兄弟 (4)v和u互為兄弟

這裡單獨討論第三種可能具有的關係:

若情況為(1)則u的父結點與v的父結點 是 父子爺孫關係

若情況為(2)則u的父結點與v的父結點 是 父子關係

若情況為(3)則u的父結點與v的父結點 也是 父子關係

若情況為(4)則u的父結點與v的父結點 是 同乙個人

綜上 第三種關係不存在

2-4對於乙個有n個結點、k條邊的森林,共有幾棵樹?(a)

a.n−k

b.n−k+1

c.n−k−1

d.不能確定

[解析]公式忘了,再推一次吧

一棵樹: nodenum - 1 = edgenum

乙個森林: n - treenum = k

2-6由若干個二叉樹組成的森林f中,葉結點總個數為n,

度為2的結點總個數為m,則該集合中二叉樹的個數為:(b)

a.m−n

b.n−m

c.n−m−1

d.無法確定

[解析]設二叉樹的數目為treenum

一棵樹: n0 = n2 + 1

森林: n = m + treenum

2-8在乙個用陣列表示的完全二叉樹中,如果根結點下標為1,

那麼下標為17和19這兩個結點的最近公共祖先結點在**(陣列下標)?

(注:兩個結點的「公共祖先結點」是指同時都是這兩個結點祖先的結點)(b)

a.8b.4

c.2d.1

[解析]注意 二叉樹求父親節點是 除2 下取整.

17 /2 = 8 /2 = 4

19 /2 = 9 /2 = 4

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

a.8b.7

c.6d.5

[解析] 2^6 - 1 == 63, 2^7 - 1 = 127

只有六層裝不下

2-10

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

[解析]先求出後序遍歷序列, 依次找到結點, 若左子樹為空,則左子樹存前驅

若右子樹為空,則右子樹存後繼

後序序列的第乙個結點和最後乙個節點有可能出現指標指向null的情況

4-1已知乙個森林的先序遍歷序列為befklcgdhij,

中序遍歷序列為eklfbgchijd,該森林的葉子數為(3)

[解析]森林的先序遍歷 對應到二叉鍊錶的先序遍歷

森林的中序遍歷 對應到二叉鍊錶的中序遍歷

4-2已知一顆樹的先根序遍歷序列為abhcefgd,

後根序遍歷序列為hbegfcda,這顆樹的深度為()

[解析]一棵普通樹的先根遍歷對應二叉鍊錶的先序遍歷

一棵普通樹的後根遍歷 對應二叉鍊錶的 中序遍歷

由此可以得到原 二叉鍊錶的 結構

注意 此時得到的是 二叉鍊錶 不是原樹的 結構

需要在還原會原來 的樹

進而得到 原樹的深度 是4

7-2 家譜處理(不會寫也不想寫)

樹與森林,哈希曼樹

樹與森林 樹 可以分為有序樹和無序樹,我們主要研究無序樹 樹的各種問題都能通過轉換成二叉樹來解決 如果二叉樹表示的是樹 那麼左邊不再是左子樹,而是孩子,右邊不在是右子樹,而是兄弟 一 樹的表示方法 雙親表示法 以順序儲存為例 節點結構 typedef struct ptnode ptnode 樹結構...

樹與森林的儲存 遍歷和樹與森林的轉換

樹的儲存結構 雙親表示法 孩子表示法 a 多重鍊錶 鍊錶中每個指標指向一棵子樹的根結點 b 把每個跟結點的孩子結點排列起來,看成乙個線性表,且以單鏈表做儲存結構.且n個頭指標也組成乙個線性表.孩子兄弟表示法 二叉樹表示法或二叉鍊錶表示法 以二叉鍊錶做樹的儲存結構,鍊錶中結點的兩個鏈域分別指向該結點的...

樹與森林的概念與性質

全部資料結構 演算法及應用課內模板 1 樹的特點 樹中結點 除根結點 均有乙個直接前驅和多個直接後繼,樹是乙個樹形 非線性 結構。2 樹上結點的度 樹上結點的度為其出度,即兒子個數 3 父結點 兒子結點 兄弟結點 祖先結點 子孫結點 葉子結點 又叫終端結點 外部結點,度為0 分支結點 又叫非葉子結點...