給定乙個二叉樹,找出其最大深度。
二叉樹的深度為根節點到最遠葉子節點的最長路徑上的節點數。
說明: 葉子節點是指沒有子節點的節點。
示例:給定二叉樹 [3,
9,20,null,null,15,
7],3
/ \ 9
20/ \
157返回它的最大深度 3 。
解答:
深度優先搜尋:
class
solution
return
(max
(maxdepth
(root-
>left)
,maxdepth
(root-
>right))+
1);}
};
廣度優先搜尋:
class
solution
else
==if
(deq_tree.
front()
!=nullptr)if
(p->left!=
nullptr
) s-=1
;}depth+=1
;}return depth;}}
;
官方題解:
深度優先搜尋:
class
solution};
/solution/er-cha-shu-de-zui-da-shen-du-by-leetcode-solution/
class
solution};
/solution/cde-san-chong-fang-fa-shi-xian-you-zhu-jie-by-zzxh/
廣度優先搜尋:
class
solution
ans +=1
;}return ans;}}
;//leetcode-cn.com/problems/maximum-depth-of-binary-tree/solution/er-cha-shu-de-zui-da-shen-du-by-leetcode-solution/
注:
①deque雙端佇列的使用
②if是線性執行,while才是迴圈執行(廣度優先搜尋的第乙個迴圈)
最基礎的樹 二叉樹
樹,是一種非線性資料結構,樹中的元素具有明顯的層次特性。在這種資料結構中,每個結點只有乙個前驅,卻可以有多個後繼,類似樹,只有一根主幹,卻可以有很多分支。通常我們研究的是二叉樹,即每個結點只能分一叉的樹。二叉樹我們可以表示成下圖的樣子,實際像一棵倒過來的樹,或者像乙個樹根。其有root根節點,相連的...
二叉樹 二叉樹
題目描述 如上所示,由正整數1,2,3 組成了一顆特殊二叉樹。我們已知這個二叉樹的最後乙個結點是n。現在的問題是,結點m所在的子樹中一共包括多少個結點。比如,n 12,m 3那麼上圖中的結點13,14,15以及後面的結點都是不存在的,結點m所在子樹中包括的結點有3,6,7,12,因此結點m的所在子樹...
二叉樹的構建與遍歷 最簡單的二叉樹
include using namespace std 定義節點的類模板。二叉樹的節點是乙個類的例項,該類由乙個資訊成員和兩個指標成員組成 template class binarytreenode 遞迴地建立一顆二叉樹 先序 template class binarytree binarytree...