104. Maximum Depth of Binary Tree

Posted 小河沟大河沟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了104. Maximum Depth of Binary Tree相关的知识,希望对你有一定的参考价值。

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 Exceeded
    int 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

以上是关于104. Maximum Depth of Binary Tree的主要内容,如果未能解决你的问题,请参考以下文章

104. Maximum Depth of Binary Tree

LC.104. Maximum Depth of Binary Tree

104. Maximum Depth of Binary Tree

LeetCode 104. Maximum Depth of Binary Tree

104. Maximum Depth of Binary Tree

LeetCode104. Maximum Depth of Binary Tree