97 二叉树的最大深度

原题网址:http://www.lintcode.com/zh-cn/problem/maximum-depth-of-binary-tree/#

给定一个二叉树,找出其最大深度。

二叉树的深度为根节点到最远叶子节点的距离。

样例

给出一棵如下的二叉树:

  1
 / \ 
2   3
   / \
  4   5

这个二叉树的最大深度为3.

标签 
 
思路:之前做过平衡二叉树的话这道题就很容易了……递归,代码理解起来应该不难。
 
AC代码:
/**
 * Definition of TreeNode:
 * class TreeNode {
 * public:
 *     int val;
 *     TreeNode *left, *right;
 *     TreeNode(int val) {
 *         this->val = val;
 *         this->left = this->right = NULL;
 *     }
 * }
 */

class Solution {
public:
    /**
     * @param root: The root of binary tree.
     * @return: An integer
     */
    int maxDepth(TreeNode * root) {
        // write your code here
         if (root==NULL)
     {
         return 0;
     }
     int leftDepth=maxDepth(root->left);
     int rightDepth=maxDepth(root->right);
     return max(leftDepth,rightDepth)+1;
    }
};

 

 
 
posted @ 2018-04-21 21:27  eeeeeeee鹅  阅读(171)  评论(0编辑  收藏  举报