[LeetCode] 104 二叉树最大深度
2016-02-28 00:23
387 查看
Maximum Depth of Binary Tree(二叉树最大深度)
【难度:Easy】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.
给定一个二叉树,求该树最大深度。
树的最大深度指从根节点往下到最远的叶子节点所形成的路径的节点个数。
解题思路:
根据树的结构特点,将其分为左子树和右子树两部分,根据递归先序遍历的思想将大问题转化为小问题,左右子树中深度最大的一棵即为该树结构的深度。代码
C++代码如下:/** * 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) { int max = 0; if (root != NULL) { max++; int max_left = maxDepth(root->left); int max_right = maxDepth(root->right); max += max_left>max_right ? max_left:max_right; } return max; } };
相关文章推荐
- 《核心分析》第一周
- 2-4-单链表链式存储结构-线性表-第2章-《数据结构》课本源码-严蔚敏吴伟民版
- windows 清理邮件菜单
- tomcat 下部署 php
- SSL连接出现的问题
- java38.Socket通信------使用ServerSocket建立聊天服务器---2
- IIR型高斯滤波的原理及实现
- [hdu3943]K-th Nya Number
- android framework初步理解
- Android系统之G-sersor调试
- tomcat端口被占用问题解决
- android-tip-关于SpannableString的使用
- [LeetCode][JavaScript]Happy Number
- [读书笔记]JVM的垃圾收集算法
- 解决vs2010中写vb代码时按'''不自动加入函数注释的问题
- LA-3026 Period(kmp应用)
- Android中EditText的字数统计
- mysql主从原理及错误代码的原因
- C#学习之css(二)
- 求两个数中的最大值(双分支结构)