LeetCode 47. Permutations II

Posted dacc123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 47. Permutations II相关的知识,希望对你有一定的参考价值。

题目

这一题多了一个条件就是,会有重复的数字,

在上一题的基础上加一个约束条件就可以了。

class Solution 
public:
      vector<vector<int>> ans;
    vector<int> res;
    int vis[100005];
    vector<vector<int>> permuteUnique(vector<int>& nums) 
        
        sort(nums.begin(),nums.end());
        fun(nums,0);
        return ans;
    
    
    void fun(vector<int> nums,int num)
    
        if(num==nums.size())
        
            ans.push_back(res);
            return;
        
        
        for(int i=0;i<nums.size();i++)
        
            if(i!=0&&nums[i-1]==nums[i]&&vis[i-1]==1)
                continue;
            if(vis[i]==0)
            
                vis[i]=1;
                res.push_back(nums[i]);
                fun(nums,num+1);
                res.pop_back();
                vis[i]=0;
            
        
    
;

以上是关于LeetCode 47. Permutations II的主要内容,如果未能解决你的问题,请参考以下文章

leetcode 46-Permutations and 47-Permutations II

#Leetcode# 47. Permutations II

LeetCode 47 Permutations II(全排列)

19.2.7 [LeetCode 47] Permutations II

LeetCode 47. Permutations II

leetCode 47.Permutations II (排列组合II) 解题思路和方法