zoukankan      html  css  js  c++  java
  • 【leetnode刷题笔记】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.

    解题:

    递归就行:根节点为空,返回0;一个子树根节点为空,另一个子树根节点不为空,就返回根节点不为空的子树高度;否则返回两个子树中高度大者加一。

    代码:

     1 /**
     2  * Definition for binary tree
     3  * struct TreeNode {
     4  *     int val;
     5  *     TreeNode *left;
     6  *     TreeNode *right;
     7  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     8  * };
     9  */
    10 class Solution {
    11 public:
    12     int maxDepth(TreeNode *root) {
    13         if(root == NULL)
    14             return 0;
    15         if(root->left != NULL && root->right == NULL)
    16             return maxDepth(root->left)+1;
    17         if(root->right != NULL && root->left == NULL)
    18             return maxDepth(root->right)+1;
    19         int h_left = maxDepth(root->left);
    20         int h_right = maxDepth(root->right);
    21         return h_left > h_right ? h_left+1:h_right+1;
    22     }
    23 };

     Java版本代码:

     1 /**
     2  * Definition for binary tree
     3  * public class TreeNode {
     4  *     int val;
     5  *     TreeNode left;
     6  *     TreeNode right;
     7  *     TreeNode(int x) { val = x; }
     8  * }
     9  */
    10 public class Solution {
    11     public int maxDepth(TreeNode root) {
    12         return maxDepthHelper(root, 0);
    13     }
    14     int maxDepthHelper(TreeNode root,int height){
    15         if(root == null)
    16             return height;
    17         int l = maxDepthHelper(root.left, height+1);
    18         int r = maxDepthHelper(root.right, height+1);
    19         return l > r?l:r;
    20     }
    21 }
  • 相关阅读:
    css自动添加浏览器兼容前缀 autoprefixer设置
    QT调用百度语音REST API实现语音合成
    stm32之SPI通信协议
    Framingham风险评估
    ACF/PACF,残差白噪声的检验问题
    详细BP神经网络预测算法及实现过程实例
    R语言 神经网络算法
    matlab绿色版本合集
    时间序列学习记录
    预测出现代码问题及解决方法
  • 原文地址:https://www.cnblogs.com/sunshineatnoon/p/3636907.html
Copyright © 2011-2022 走看看