1. 程式人生 > >求樹對應的二叉樹中無右孩子的結點個數

求樹對應的二叉樹中無右孩子的結點個數

該題目出自於《王道2015資料結構聯考複習指導》P140,一,T8.。

1、問題重述:設F是一個森林,B是由F變換而來的二叉樹。若F中有n個非終端結點,則B中右指標域的為空的結點個數是()個。

A、n-1          B、n          C、n+1       D、n+2

2、解題步驟

設有x個葉子結點,那麼總結點個數為x+n個。所以左右指標域的個數分別為x+n個。

N 右空+N 右不空=N右=x+n                                 式子(1)

N 左不空+N 右不空=N不空=x+n-1                      式子(2)

(因為不空指標個數等於總的結點個數減1,即每一個非空指標對應數的一條邊。有x+n個結點自然有x+n-1條邊)

又因為有n個非終端,在所以所以有且僅有n個結點有孩子,因此轉化成孩子兄弟表示法的二叉樹後有n個不空的左指標。故

N左不空=n                                                             式子(3)

將式子(3)帶入式子(2)可以得到

N右不空=x-1                                                          式子(4)

將式子(4)帶入(1)得      

N右空=x+n-(x-1)=n+1

所以得到B中右指標域為空的結點個數為n+1。即為書中非終端結點個數加1。

3、祝願考研學子有志者事竟成!