【LeetCode改编题】102.二叉树的层次遍历

class Solution {
public:        
    vector> levelOrder(TreeNode* root) {
        /*
            二叉树的层次遍历的递归写法
        */    
        vector> result;
        int depth = 0;
        level(root, result, depth);
        return result;
    }

    void level(TreeNode* root, vector>& result, int depth)
    {
        if (root == nullptr) return;
        if (result.size() == depth) result.push_back(vector());
        result[depth].push_back(root -> val);
        level(root -> left, result, depth + 1);
        level(root -> right, result, depth + 1);
    }
};

改编:迭代写法都会写,递归写法呢?

你可能感兴趣的:(leetcode,算法,职场和发展)