Advertisement
vaibhav1906

Permutations

Dec 23rd, 2021
1,053
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.83 KB | None | 0 0
  1. class Solution {
  2. public:
  3.    
  4.     void f(vector<int> nums, vector<vector<int>>&ans, vector<int>&cur, vector<int> &visited, int n){
  5.        
  6.         if(cur.size()==n){
  7.             ans.push_back(cur);
  8.             return;
  9.         }
  10.        
  11.         for(int i=0; i<n; i++){
  12.            
  13.             if(visited[i]==0){
  14.                 visited[i] = 1;
  15.                 cur.push_back(nums[i]);
  16.                 f(nums,ans,cur,visited,n);
  17.                 cur.pop_back();
  18.                 visited[i] = 0;
  19.             }
  20.            
  21.         }
  22.        
  23.     }
  24.    
  25.     vector<vector<int>> permute(vector<int>& nums) {
  26.         vector<vector<int>> ans;
  27.         vector<int> cur;
  28.         int n = nums.size();
  29.         vector<int> visited(n,0);
  30.        
  31.         f(nums,ans,cur,visited,n);
  32.        
  33.         return ans;
  34.        
  35.     }
  36. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement