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.
#include <iostream> /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ 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) { return 0; } int Result = 1; int Left = maxDepth(root->left); int Right = maxDepth(root->right); if (Left * Right) { Result += Left < Right? Right : Left; } else { Result += Right + Left; } return Result; } };
版权声明:本文为博主原创文章,未经博主允许不得转载。
LeetCode_Maximum Depth of Binary Tree
原文地址:http://blog.csdn.net/sheng_ai/article/details/46693447