資料結構,二叉樹的根結點深度是0還是

2021-03-19 18:20:51 字數 3418 閱讀 2695

1樓:阿丶早

是1啊,深度和層數一樣的,從1開始算

2樓:銷

這個無所謂的,個人習慣而已,保證程式上下文統一即可,不必糾結具體0或1

只有一個節點的二叉樹的高度(深度)是為0還是1

3樓:

層數、深度、高度數是一樣,但三個名詞還是各有所指:層代表橫向一排節點,深度是從根節點往下(葉子)看,高度是從葉子節點往根看2^(i-1)個結點,根是要算作1層了,理會他的意思就行了

在二叉樹中,根節點的深度是0還是1 啊!在教材上是0,而老師講的是1

4樓:李寧鄭浩南

對完全二叉樹的深度,深度大於等於1.

5樓:劉6虎

應該是1 你可以找一下有關樹的深度的公式驗證一下。

二叉樹的深度是什麼意思?比如一個小題目,葉子節點(度為0)有1個,度為1的節點有11個,度為2的節

6樓:匿名使用者

結點層:根結點的層定義為1;根的孩子為第二層結點,依此類推;

樹的深度:樹中最大的結點層。

如  o     深度為2

/   \

o    o

關於 葉子節點(度為0)有1個,度為1的節點有11個,度為2的節點為0,怎麼知道該二叉樹的深度為12?

這裡葉子節點只有一個,其他的為度為1的結點,該二叉樹每層只有1個結點,如下面二叉樹o\

o\o/

o\o/

o/o/

o/o\

o\o\

o總共12層,所以深度為12

為什麼完全二叉樹中度為1的結點只能是1或0?

7樓:流火之雲

滿二叉樹的所有節點的度都是2或者0,沒有度為1的節點。

完全二叉樹,可以看做是滿二叉樹在最後一層從右往左砍掉一些節點。

如果從滿二叉樹中在最後一層自左向右砍掉的節點數是偶數,那麼該完全二叉樹中度為1的節點數就是0。

如果砍掉的節點數是奇數,那麼該完全二叉樹中就有且僅有一個節點的度為1.

完全二叉樹:

若設二叉樹的深度為h,除第 h 層外,其它各層 (1~h-1) 的結點數都達到最大個數,第 h 層所有的結點都連續集中在最左邊,這就是完全二叉樹。

完全二叉樹是由滿二叉樹而引出來的。對於深度為k的,有n個結點的二叉樹,當且僅當其每一個結點都與深度為k的滿二叉樹中編號從1至n的結點一一對應時稱之為完全二叉樹。

一棵二叉樹至多隻有最下面的一層上的結點的度數可以小於2,並且最下層上的結點都集中在該層最左邊的若干位置上,則此二叉樹成為完全二叉樹。

滿二叉樹 :

又叫full binary tree. 除葉子節點外,每一層上的所有節點都有兩個子節點(最後一層上的無子結點的結點為葉子結點)。也可以這樣理解,除葉子結點外的所有節點均有兩個子節點。

節點數達到最大值。所有葉子結點必須在同一層上.

兩者的區別:

完全二叉樹:除最後一層可能不滿以外,其他各層都達到該層節點的最大數,最後一層如果不滿,該層所有節點都全部靠左排

滿二叉樹:所有層的節點數都達到最大

8樓:您輸入了違法字

因為二叉樹所有結點滴個數都不大於2,所以結點總數n=n0+n1+n2 (1)

又因為度為1和度為2的結點分別有1個子樹和2個子樹,所以,二叉樹中子樹結點就有n(子)=n1+2n2

二叉樹中只有根節點不是子樹結點,所以二叉樹結點總數n=n(子)+1 即 n=n1+2n2+1 (2)

結合(1)式和(2)式就得n0=n2+1

完全二叉樹是效率很高的資料結構,完全二叉樹是由滿二叉樹而引出來的。對於深度為k的,有n個結點的二叉樹,當且僅當其每一個結點都與深度為k的滿二叉樹中編號從1至n的結點一一對應時稱之為完全二叉樹。

可以根據公式進行推導,假設n0是度為0的結點總數(即葉子結點數),n1是度為1的結點總數,n2是度為2的結點總數,則 :

①n= n0+n1+n2 (其中n為完全二叉樹的結點總數);又因為一個度為2的結點會有2個子結點,一個度為1的結點會有1個子結點,除根結點外其他結點都有父結點,

②n= 1+n1+2*n2 ;由①、②兩式把n2消去得:n= 2*n0+n1-1,由於完全二叉樹中度為1的結點數只有兩種可能0或1,由此得到n0=n/2 或 n0=(n+1)/2。

簡便來算,就是 n0=n/2,其中n為奇數時(n1=0)向上取整;n為偶數時(n1=1)。可根據完全二叉樹的結點總數計算出葉子結點數。

9樓:匿名使用者

看圖~ 6-12的那個結點就是度為一的結點~ 只有一個~ 所謂度就是結點的後面有幾個分叉~ 即直接後驅~完全二叉樹的定義:二叉樹的高度為h,除第 h 層外,其它各層 (1~h-1) 的結點數都達到最大個數,第 h 層所有的節點都連續集中在最左邊~  圖中的8、9、10、11、12就是第h層上的結點~即最後一層上的結點~二叉樹定義第 h 層所有的節點都連續集中在最左邊,圖中結點6與7就不能發生下面的情況:6結點只有一個左子樹,而7結點也有子樹,以為都要從左邊排~ 必須排在6結點的右子樹上,也就是說最後一層的結點的最後一個要麼是度為1,要麼度為2。

自己理解吧~ 希望能幫到忙~

10樓:匿名使用者

完全二叉樹,可以看做是滿二叉樹在最後一層從右往左砍掉一些節點。注意,滿二叉樹的所有節點的度都是2或者0,沒有度為1的節點。

如果從滿二叉樹中在最後一層自左向右砍掉的節點數是偶數,那麼該完全二叉樹中度為1的節點數就是0。如果砍掉的節點數是奇數,那麼該完全二叉樹中就有且僅有一個節點的度為1.

設深度為d(只有一個根結點時,d為1)的二叉樹只有度為0和2的結點,則此類二叉樹的結點數至少為2d-1

11樓:匿名使用者

d為1的時候,至少有1個,2*1 -1

d為2的時候,沒有度為1的點,情況為

o/ \

o o

至少為3個 = 2*2 -1

d大於2的時候,由於沒有度為1的點,所以每增加一層,每層至少增加兩個,至少的情況是增加2個

所以假設d -1層的公式為 2(d-1) -1時深度為d的結點數至少有2(d-1)-1 +2 ,在d-1層的基礎上增加2個。所以d層節點數至少為2d -1.

綜上,有推**式得到的結論得此類二叉樹的結點數至少為2d-1

求教,樹的二叉樹的高度與深度一樣嗎?

12樓:匿名使用者

引自考研大綱解析38頁:樹的深度是從根節點開始(其深度為1)自頂向下逐層累加的,而高度是從葉節點開始(其高度為1)自底向上逐層累加的。雖然樹的深度和高度一樣,但是具體到樹的某個節點,其深度和高度是不一樣的。

我的理解是:非根非葉結點的深度是從根節點數到它的,高度是從葉節點數到它的。

一棵樹轉換成二叉樹後,這棵二叉樹的根結點一定沒有

根結點一定沒有右子樹,因為右邊的是兄弟,而一棵樹中的根是沒有兄弟的,除非是在森林中 將一棵樹轉換為二叉樹後,為什麼根節點沒有右子樹 樹轉化為二叉樹時結點 左子樹是原來的孩子結點,右子樹是原來的兄內弟結點。即取根容節點左孩子向右連線他的兄弟結點 在同一層次的節點,原來互不相連 並把它的子樹,而把除左孩...

設深度為d(只有根結點時,d為1)的二叉樹只有度為0和2的結點,則此類二叉樹的結點數至少為2d

d為1的時候,至少有1個,2 1 1 d為2的時候,沒有度為1的點,情況為 o o o 至少為3個 2 2 1 d大於2的時候,由於沒有度為1的點,所以每增加一層,每層至少增加兩個,至少的情況是增加2個 所以假設d 1層的公式為 2 d 1 1時深度為d的結點數至少有2 d 1 1 2 在d 1層的...

已經二叉樹有葉子結點,則該二叉樹的總結點至少是

從根結點 n 0 開始,每層的最大結點數是 2 n由2 n 50 n 6 所以該二叉樹最少有6層 根結點算0層,最後一層有50個結點 所以總結點數是 2 0 2 1 2 2 2 3 2 4 2 5 50 113 完全二叉樹的形式總結點最少,2 5 50 2 6 所以子結點分佈在第6 7層,設第六層n...