zoukankan      html  css  js  c++  java
  • LeetCode_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.
    

      

    /**
     * Definition for binary tree
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        int maxDepth(TreeNode *root) {
            // Start typing your C/C++ solution below
            // DO NOT write int main() function
            if(root == NULL) return 0;
            int leftNum = 1 + maxDepth(root->left) ;
            int rightNum = 1 + maxDepth(root->right);
            
            int result = leftNum > rightNum ? leftNum: rightNum ;
            
            return result ;
        }
    };

     重写:

    /**
     * Definition for binary tree
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        void DFS(TreeNode * root, int len){
                
            if(root->left== NULL && root->right == NULL ){
                res = res < len ? len : res;
                return;
            }
            if(root->left != NULL)
                DFS(root->left, len +1);
            if(root->right != NULL)
                DFS(root->right, len+1);
        }
        int  maxDepth(TreeNode *root) {
            // Start typing your C/C++ solution below
            // DO NOT write int main() function
            if(root == NULL ) return 0;
            res = 0;
            DFS(root, 1);
            return res;
        }
    private:
        int res;
    };
    --------------------------------------------------------------------天道酬勤!
  • 相关阅读:
    85个国外Ajax例子
    如何捕获方向键
    C#版对对碰[强荐]
    如何关闭移动盘的自动播放
    常用算法大全-回溯算法
    string转换成color
    常用算法大全-分而治之算法
    常用算法大全-分枝定界
    C#游戏——极品蜜蜂V1.0
    WebService传多个参数和返回多个参数的方法
  • 原文地址:https://www.cnblogs.com/graph/p/3020268.html
Copyright © 2011-2022 走看看