力扣513. 找树左下角的值

题目:

给定一个二叉树,在树的最后一行找到最左边的值。

示例:

输入:
2
/\
1 3

输出:
1

解法

题目要求【找到最后一行】,【最左边的节点值】
想到层序遍历
每次层序遍历,记录最左边的值。

代码

class Solution {
    
    
public:
    int findBottomLeftValue(TreeNode* root) {
    
    
        queue<TreeNode*> que;
        if(root) que.push(root);
        int result = 0;

        while(!que.empty()) {
    
    
            int size = que.size();
            for (int i = 0; i < size; i++) {
    
    
                TreeNode* node = que.front();
                que.pop();
                if (i == 0) result = node->val;

                if (node->left) que.push(node->left);
                if (node->right) que.push(node->right);               
            }
        }
        return result;
    }
};

猜你喜欢

转载自blog.csdn.net/Matcha_/article/details/113824991