/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ class Solution { public: /** * * @param root TreeNode类 * @return int整型 */ int maxDepth(TreeNode* root) { return root ? max(maxDepth(root->left), maxDepth(root->right)) + 1: 0; } };
思路:递归。
* 树不存在,返回深度为0。
* 树存在,其最大深度为左右子树的最大深度加上他自己所占的一层。