求二叉樹的最大深度

2022-06-05 03:57:11 字數 588 閱讀 9074

/*

* * definition for a binary tree node.

* struct treenode

* }; */

//深度優先:遞迴版

class

solution

};//

深度優先:用棧的迴圈版

class

solution

p=s.top().first;//

若左邊無路,就預備右拐。右拐之前,記錄右拐點的基本資訊

deep=s.top().second;

if(maxdeep//

預備右拐時,比較當前節點深度和之前儲存的最大深度

s.pop();//

將右拐點出棧;此時棧頂為右拐點的前乙個結點。在右拐點的右子樹全被遍歷完後,會預備在這個節點右拐

p=p->right;

}return

maxdeep;

}};//

廣度優先:使用佇列

class

solution

}return

deep;

}};

求二叉樹的最大深度

二叉樹的題目,大部分都能用分治的思路來解題。求二叉樹的最大深度,就是求左 右子數的最大深度 1即可。給定乙個二叉樹,找出其最大深度。二叉樹的深度為根節點到最遠葉子節點的距離。樣例給出一棵如下的二叉樹 1 2 3 4 5這個二叉樹的最大深度為3.definition of treenode publi...

104 求二叉樹最大深度

1 class solution 9int left length maxdepth root left 左展開去求深度 10int right length maxdepth root right 11if left length right length 1215 else 1619 20 1 ...

求二叉樹的最大or最小深度

給定乙個二叉樹,找出其最大深度。最大深度即二叉樹的高度,就是根節點到最遠葉子節點的最長路徑上的節點數。示例 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回它的最大深度 3.通過遞迴,依次查詢左 右子節點的最大深度,並返回給根節點乙個最大深度。var maxdept...