Skip to content

Latest commit

 

History

History
29 lines (25 loc) · 756 Bytes

17.md

File metadata and controls

29 lines (25 loc) · 756 Bytes

PERMUTATION2

Practice
public:
set<vector<int>>s;
void find(int ind,vector<vector<int>> &ans,vector<int>&nums){

      if(ind==nums.size() && s.find(nums)==s.end())
      {
          ans.push_back(nums);
          s.insert(nums);
          return;
      }

      for(int i=ind;i<nums.size();i++)
      {
          swap(nums[ind],nums[i]);
          find(ind+1,ans,nums);
          swap(nums[ind],nums[i]);
      }
  }
  vector<vector<int>> permuteUnique(vector<int>& nums) {
      vector<vector<int>> ans;
  
      find(0,ans,nums);
     // ans.erase(unique(ans.begin(),ans.end()),ans.end());
      return ans;
  }