Leetcode刷题笔记题解(C++):46. 全排列

Leetcode刷题笔记题解(C++):46. 全排列_第1张图片

思路:搜索回溯的办法

相当于往空格中放数字

放好的跟未放的进行分开区别,然后进行交换和撤销交换进行递归

代码如下:

class Solution {
public:
    vector> res;
    vector> permute(vector& nums) {
        int len=nums.size();
        backtract(nums,0,len);
        return res;
    }

    void backtract(vector& nums,int first,int len){
        //数填完了
        if(first==len){
            res.push_back(nums);
        }
        for(int i=first;i

 

你可能感兴趣的:(Leetcode算法题解,c++,leetcode,算法,回溯)