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.
没啥说的,深度优先搜索(Depth-first Search),直接在网站上敲代码,一遍AC。
/** * 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 DFS(TreeNode * root, int depth){ if(root == NULL){ return depth; } else{ return max(DFS(root->left, depth + 1), DFS(root->right, depth + 1)); } } int maxDepth(TreeNode *root) { return DFS(root, 0); } };