见问题: https://oj.leetcode.com/problems/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.
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) { if ( root == NULL ) { return 0; } else { int leftDepth = maxDepth(root->left) + 1; int rightDepth = maxDepth(root->right) + 1; return ( leftDepth > rightDepth ?leftDepth : rightDepth ); } } };