二叉樹知識整理(不間斷更新)

爲什麼二叉樹n0節點比n2節點多1

因爲二叉樹所有結點滴個數都不大於2,所以結點總數(1)n=n0+n1+n2
又因爲度爲1和度爲2的結點分別有1個子樹和2個子樹,所以,二叉樹中子樹結點就有
(2) n(子)=n1+2n2
二叉樹中只有根節點不是子樹結點,所以二叉樹結點總數
n(總)=n(子)+1 即 n(總)=n1+2n2+1
結合(1)式和(2)式就得
n0=n2+1

哈夫曼樹是滿二叉樹嗎,avl樹,完全二叉樹滿二叉樹都是什麼,各自區別是什麼?

看到好多網上答案是錯的,感覺好無語特總結一下。
滿二叉樹:除了葉節點外每一個結點都有左右子女且葉節點都處在最底層的二叉樹。
這個滿二叉樹應該很好想象,就是一顆非常完美的樹,除了葉節點其他節點都有兩個孩子。
完全二叉樹:只有最下面的兩層結點度小於2,並且最下面一層的結點都集中在該層最左邊的若干位置的二叉樹。
也就是說,在滿叉樹的基礎上,我在最底層從右往左刪去若干節點,得到的都是完全二叉樹。
總結:所以說,滿二叉樹一定是完全二叉樹,但是完全二叉樹不一定是滿二叉樹
平衡二叉樹:又稱爲AVL樹,它是一顆空樹或它的左右兩個子樹的高度差的絕對值不超過1
哈夫曼樹:帶權路徑長度達到最小的二叉樹,也叫做最優二叉樹。
總結:注意到這裏,哈夫曼樹只是一棵最優二叉樹,不一定是完全二叉樹,也不一定是平衡二叉樹。完全是八竿子打不着的事情,人家哈夫曼樹不關注樹的結構,只關注帶權路徑長度好嗎。。

前序,中序,後序遍歷怎麼在圖上通過什麼方法觀察出來?

通過找根節點方法如下圖晚上回去補圖

一顆完全二叉樹有n個節點怎麼求葉子節點

一、假設n0是度爲0的結點總數(即葉子結點數),n1是度爲1的結點總數,n2是度爲2的結點總數。
二、由二叉樹的性質可知:n0=n2+1,則n= n0+n1+n2(其中n爲完全二叉樹的結點總數)
三、由上述公式把n2消去得:n= 2n0+n1-1
四、由於完全二叉樹中度爲1的結點數只有兩種可能0或1,n爲偶數時候爲0,爲奇數時候爲1 由此得到n0=(n+1)/2或n0=n/2
五、合併成一個公式:n0=(n+1)/2 ,就可根據完全二叉樹的結點總數計算出葉子結點數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章