Files
leetcode-master/problems/0429.N叉树的层序遍历.md
youngyangyang04 c0be90a277 Update
2020-09-29 10:08:39 +08:00

907 B
Raw Blame History

题目地址

https://leetcode-cn.com/problems/sum-of-left-leaves/

思路

层序遍历,和 102题目一个套路

C++代码

递归法

class Solution {
public:
    vector<vector<int>> levelOrder(Node* root) {
        queue<Node*> que;
        if (root != NULL) que.push(root);
        vector<vector<int>> result;
        while (!que.empty()) {
            int size = que.size();
            vector<int> vec;
            for (int i = 0; i < size; i++) { // 这里一定要使用固定大小size不要使用que.size()
                Node* node = que.front();
                que.pop();
                vec.push_back(node->val);
                for (int i = 0; i < node->children.size(); i++) {
                    if (node->children[i]) que.push(node->children[i]);
                }
            }
            result.push_back(vec);
        }
        return result;

    }
};