給定一個二叉樹?root
?,返回其最大深度。
二叉樹的?最大深度?是指從根節(jié)點到最遠葉子節(jié)點的最長路徑上的節(jié)點數。
思路一:遞歸
int dfs(struct TreeNode* node){
int rdepth = 1;
int ldepth = 1;
if(node->left!=NULL) ldepth = rdepth + dfs(node->left);
if(node->right!=NULL) rdepth = rdepth +dfs(node->right);
if(ldepth>rdepth)return ldepth;
else return rdepth;
}
int maxDepth(struct TreeNode* root){
if(root==NULL)return 0;
return dfs(root);
}
分析:
本題要求二叉樹的最大深度,可想到將左子樹深度和右子樹深度分別記錄下來,最后比較左右子樹深度輸出最大深度文章來源:http://www.zghlxwxcb.cn/news/detail-674817.html
總結:
本題考察二叉樹的應用,將左右子樹分別遞歸求出最大深度輸出即可文章來源地址http://www.zghlxwxcb.cn/news/detail-674817.html
到了這里,關于leetcode做題筆記104. 二叉樹的最大深度的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!