濮阳网站建设网站,网络舆情监测服务,如何提高网站点击率怎么做,学网站开发技术给定一个二叉树 root #xff0c;返回其最大深度。
二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。
思路一#xff1a;递归
int dfs(struct TreeNode* node){int rdepth 1;int ldepth 1;if(node-left!NULL) ldepth rdepth dfs(node-lef…给定一个二叉树 root 返回其最大深度。
二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。
思路一递归
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(ldepthrdepth)return ldepth;else return rdepth;}
int maxDepth(struct TreeNode* root){if(rootNULL)return 0;return dfs(root);
}
分析
本题要求二叉树的最大深度可想到将左子树深度和右子树深度分别记录下来最后比较左右子树深度输出最大深度
总结
本题考察二叉树的应用将左右子树分别递归求出最大深度输出即可