題目描述:
給定乙個二叉樹,編寫乙個函式來獲取這個樹的最大寬度。樹的寬度是所有層中的最大寬度。這個二叉樹與滿二叉樹(full binary tree)結構相同,但一些節點為空。
每一層的寬度被定義為兩個端點(該層最左和最右的非空節點,兩端點間的null節點也計入長度)之間的長度。
方法一:
/**
* definition for a binary tree node.
* public class treenode
* }*/class
solution
void
func
(treenode root,
int height,
int pos)
}}
方法二:
/**
* definition for a binary tree node.
* public class treenode
* }*/class
solution
queue
q=new
linkedlist
<
>()
; q.
offer
(root)
; list
list=
newlinkedlist
<
>()
; list.
add(0)
;int max=1;
while
(!q.
isempty()
)if(tmp.right!=null)}if
(list.
size()
>=2)
}return max;
}}
二叉樹最大寬度
二叉樹的寬度 即具有結點數最多的那一層的結點數 思路 在二叉樹的層次遍歷演算法的基礎上修改 include include include using namespace std typedef char elemtype typedef struct bitnode bitree 建立二叉樹 vo...
二叉樹的深度 二叉樹的深度 二叉樹最大寬度
題目 輸入一棵二叉樹的根節點,求該樹的深度。從根節點到葉節點依次經過的節點 含根 葉節點 形成樹的一條路徑,最長路徑的長度為樹的深度。例如 給定二叉樹 3,9,20,null,null,15,7 返回它的最大深度 3 根節點加上左右子樹的最大深度就是樹的最大深度。如下 class solution ...
樹 二叉樹最大寬度和高度
題目描述 題目描述 description 給出乙個二叉樹,輸出它的最大寬度和高度。輸入描述 input description 第一行乙個整數n。下面n行每行有兩個數,對於第i行的兩個數,代表編號為i的節點所連線的兩個左右兒子的編號。如果沒有某個兒子為空,則為0。輸出描述 output descr...