104. 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.
解析
// Maximum Depth of Binary Tree
class Solution {
public:// Time Limit Exceededint maxDepth1(TreeNode *root) {if (!root){return 0;}return (maxDepth(root->left) > maxDepth(root->right)) ? (maxDepth(root->left) + 1) : (maxDepth(root->right)+1);}// 这样写不会超时int maxDepth(TreeNode* root) {if (root == NULL) return 0;return max(maxDepth(root->left), maxDepth(root->right)) + 1;}int maxDepth(TreeNode *root){if (!root){return 0;}queue<TreeNode*> que;que.push(root);int level = 0;while (!que.empty()){int size = que.size();for (int i = 0; i < size;i++){TreeNode* temp = que.front();que.pop();if (temp->left){que.push(temp->left);}if (temp->right){que.push(temp->right);}}level++;}return level;}
};
104. Maximum Depth of Binary Tree