二叉樹求根到葉結點最長距離和最短距離

2025-01-29 13:05:06 字數 3592 閱讀 2394

1樓:果凍在乎你

這個很簡單。其實就是按層次遍歷二叉樹。就是廣度優先演算法。要寫乙個佇列來處理很簡單的,看廣度優先演算法。

2樓:網友

int depth2(btree root)..

int top = 0;

int depth = 0,temp = 0;//temp 儲存當前單分支的最大值。

btree p = root;

btree nodepointer[max_tree_degree];

while(p ||top > 0)..

if(p)..

nodepointer[top] =p;

top; depth; /統計單分支的深度。

p = p->lchild;

else...

top;p = nodepointer[top];

p = p->rchild;

if(p ==null)..單分支結束。

if(depth > temp )

temp = depth;

depth;

else/while

return temp;

一棵深度為5的滿二叉樹有 個分支結點和 個葉子結點

3樓:汽車科技小達人

深度為5的完全二叉樹的葉子的確是16個,但是分支結點是15個。

二叉樹是指樹中節點的度不大於2的有序樹,它是一種最簡單且最重要的樹。二叉樹的遞迴定義為二叉樹是一棵空樹,或者是一棵由乙個根節點和兩棵互不相交的,分別稱作根的左子樹和右子樹組成的非空樹;左子樹和右子樹又同樣都是二叉樹。

特殊型別。1、滿二叉樹:如果一棵二叉樹只有度為0的結點和度為2的結點,並且度為0的結點在同一層上,則這棵二叉樹為滿二叉樹。

2、完全二叉樹:深度為k,有n個結點的二叉樹若且唯若其每乙個結點都與深度為k,有n個結點的滿二叉樹中編號從1到n的結點一一對應時,稱為完全二叉樹。

4樓:nohow絕不

一棵深度為5的滿二叉樹有 2的(n-1)次方減1 個分支結點和 2的(n-1)次方 個葉子結點。

即 15 16

已知二叉樹有50個葉子結點,則該二二叉樹總結點至少多少個?

5樓:汲典東方亦竹

99個。1、二叉樹共用3類結點,即度為2的結點,度為1的結點和度為0的結點(葉子結點。

2、任何乙個二叉樹的葉子結點數總比度為2的結點數多乙個;

3、至少的情況就是該二叉樹為滿二叉樹。

及沒有度為1的結點;

故,50+49=99.

高度為8的完全二叉樹至少有幾個葉子結點

6樓:網友

滿二叉樹情況下葉子結點最多了,h層高的滿二叉樹葉子結點公式為:2^(h-1)個。

高度為8的完全二叉樹至少有2的7次方個,即128

二叉樹的度表示節點的子樹或直接繼承者的數目,二叉樹的度是乙個子樹或單子樹。2度是兩個孩子,或者左和右子樹有兩個叉樹,最大度數為2。

7樓:網友

2的(8-2)次方,第八層只掛乙個。不接受反駁。

一棵n個結點的滿二叉樹有幾個度為1的結點,有幾個分支結點個幾個葉子結點。

8樓:假面

滿二叉樹要麼度為0要麼度為2,所以又0個度為1的結點。

最後一層葉子結點數 (n+1) / 2,分支結點是 n - n+1) / 2 = (n-1)/2。

如果一棵二叉樹的結點要麼是葉子結點,要麼它有兩個子結點,這樣的樹就是滿二叉樹。(一棵滿二叉樹的每乙個結點要麼是葉子結點,要麼它有兩個子結點,但是反過來不成立,因為完全二叉樹也滿足這個要求,但不是滿二叉樹)。

二叉樹上節點間的最大距離

9樓:天羅網

從二叉樹的節點a出發,可以向上或者向下走,但沿途的節點只能經過一次,當到達節點b時,路徑上的節點數叫做a到b的距離。

比如,下圖所示的二叉樹,節點4和節點2的距離為2,節點5和節點6的距離為5,給定一棵二叉樹的頭節點head,求整棵樹上節點如啟棚間的最大距離。

如果二叉樹的節點數為n,時間複雜度要求為o(n)最大距離來自三種情況。

1、h左子樹渣則上的最大距離。

2、h右子樹上的最大距離。

3、h左子樹上離最遠的距離旁塌(左子樹高度)+h右子樹上離最遠的距離(右子樹高度)+1

求二叉樹的葉子結點數

10樓:黑科技

二叉樹的葉子結點數是6。

二叉樹的葉子節點數:沒有子樹的結點是葉子結點。結點的度是指,該結點的子樹的個數,在二叉樹中,不存在度大於2的結點。

計算公式為n0等於n2加是葉子節點的個數,n2是度為2的結點的個數,n0等於n2加1相當於5加1等於6。所以二叉樹有5個度為2的結點,則該二叉樹中的葉子結點數為6。

葉子結點是離散數學中的概念。一棵樹當中沒有子結點(即度為0)的結點稱為葉子結點,簡稱"葉子"。 葉子是指度為0的結點,又稱為終端結點。

求二叉樹的葉子結點數

11樓:網友

這個問題是給定n個節點構造bst,求葉子節點的數目。但是題目缺少條件,只能求得乙個範圍。

首先證明這個問題有多解的可能,舉乙個簡單的反例即可說明。

1:假設s=abc,葉子節點數為1

2:假設s=bac,葉子節點數為2

既然解不唯一,則求出範圍:

1:最差情況:如果輸入的是乙個順序序列,葉子節點數=1;

2:最好情況:如果形成了平衡二叉樹,其最理想的情況,恰巧是完全二叉樹,則葉子節點數m=

h=[log2n]+1

葉子節點存在於最底層和倒數第二層,1~h-1層是全滿的,共有節點2^(h-1)-1個,所以。

h層有有葉子節點n-2^(h-1)+1個;

h-1層的葉子節點數和h層的節點數有關,h-1層的葉子節點數為:

2^(h-2)-[n-2^(h-1)+1+1]/2//+1是因為這裡要上取整。

n-2^(h-1)+1+2^(h-2)-[n-2^(h-1)+1+1]

某二叉樹共有12個結點,其中葉子結點只有乙個。則該二叉樹的深度為(根節點在第一層)

12樓:demon陌

二叉樹的深度為12。

因為葉子節點為1個,按二叉樹理論得出(任意一棵二叉樹中度為0的節點總是比度為2的節點多乙個),故得出此二叉樹度為2的節點為0個。

12(總節點)-1(度為0)- 0(度為2)=11(度為1)。

故證明此二叉樹每層只有1個節點,總共12層。

一棵深度為k,且有2^k-1個節點的二叉樹,稱為滿二叉樹。這種樹的特點是每一層上的節點數都是最大節點數。而在一棵二叉樹中,除最後一層外,若其餘層都是滿的,並且最後一層或者是滿的,或者是在右邊缺少連續若干節點,則此二叉樹為完全二叉樹。

具有n個節點的完全二叉樹的深度為floor(log2n)+1。深度為k的完全二叉樹,至少有2k-1個葉子節點,至多有2k-1個節點。

二叉樹有結點,其中葉子結點有,該二叉樹的深度怎麼求?假設根結點在第一層

度為2的節點1 1 0個所以沒有度為2的節點共7層 二叉樹中 度為0的結點個數 度為2的結點個數 1 題目中葉子結點有1個,所以度為2的結點是0個 所以這7個結點是 每層一個 結點 一共7成 即深度為7 這就退化成一個連結串列了啊,一共7層,最後一層一個葉子節點。葉子節點就是度為0的結點,比度為2的...

設一棵完全二叉樹中有結點,則該完全二叉樹的深度為A,8 B,7 C,6 D

答案是 b,7 注 根結點的深度是1 分析過程如下 選項a,8 假設完全二叉樹的前7層都是滿二內叉樹,那麼容,這7層的結點數 2 7 1 127 65 注 2 7表示2的7次方 如果算上第8層的結點,總結點數會更多,不符合題目要求.選項b,7 假設完全二叉樹的前6層都是滿二叉樹,那麼,這6層的結點數...

設一棵完全二叉樹中有結點,則該二叉樹的深度為多少?若用二叉連結串列作為該完全二叉樹的儲存結構,則共

如圖完全二叉du樹 存在單分支zhi 對應的二叉連結串列求空dao指標域即求先孩子結點個數 版2再 1 此權處的1就是單分支結點的空指標域 深度為9的完全二叉樹前8層是滿二叉樹,共2 1 255個結點第9層有500 255 245個結點 245為奇數可知其父結點一定有單分支 其父結點個數為244 2...