【LeetCode & 剑指offer刷题】树题4:104 Maximum Depth of Binary Tree

【LeetCode & 剑指offer 刷题笔记】目录(持续更新中...)

104. Maximum Depth of Binary Tree

Given a binary tree, find its maximum depth.
The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.
Note: A leaf is a node with no children.
Example:
Given binary tree [3,9,20,null,null,15,7],
 3
/ \
9  20
    / \
    15 7
return its depth = 3.
 
/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
 * };
 */
class Solution
{
public:
    int maxDepth(TreeNode* root)
    {
        if(root == NULL) return 0; //递归的出口
        int depth_left = maxDepth(root->left); //用递归的方法,左子树的深度
        int depth_right = maxDepth(root->right)//右子树的深度
       
        return 1 + max(depth_left, depth_right);
       
    }
};
 
 

 

posted @ 2019-01-05 19:29  wikiwen  阅读(149)  评论(0编辑  收藏  举报