美文网首页
46.permutations

46.permutations

作者: Optimization | 来源:发表于2020-05-29 17:21 被阅读0次
问题:

1.回溯思路框架
2.什么时候加引用,你想用他来返回数

正文:
class Solution {
public:
    vector<vector<int>> permute(vector<int>& nums) {
        if(!nums.size()) return {};
        
        vector<int> path;
        backtrack(path, nums);
        return ans;
    }
private:
    // result
    vector<vector<int>> ans;
    // 引用不引用的问题怎么办?
    void backtrack(vector<int> path, vector<int> nums){
        if (path.size() == nums.size()){
            ans.push_back(path);
            return;
        }
        for (int i =0; i < nums.size(); i++) {
            // 如果path中有的话,那就不用拿了
            if(find( path.begin(), path.end(), nums[i]) != path.end()){
                continue;
            }
            path.push_back(nums[i]);
            backtrack(path, nums);
            path.pop_back();
        }
    }
};

相关文章

  • 46.permutations

    问题: 1.回溯思路框架2.什么时候加引用,你想用他来返回数 正文:

网友评论

      本文标题:46.permutations

      本文链接:https://www.haomeiwen.com/subject/ulcxzhtx.html