Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public:
- void f(vector<int> nums, vector<vector<int>>&ans, vector<int>&cur, vector<int> &visited, int n){
- if(cur.size()==n){
- ans.push_back(cur);
- return;
- }
- for(int i=0; i<n; i++){
- if(visited[i]==0){
- visited[i] = 1;
- cur.push_back(nums[i]);
- f(nums,ans,cur,visited,n);
- cur.pop_back();
- visited[i] = 0;
- }
- }
- }
- vector<vector<int>> permute(vector<int>& nums) {
- vector<vector<int>> ans;
- vector<int> cur;
- int n = nums.size();
- vector<int> visited(n,0);
- f(nums,ans,cur,visited,n);
- return ans;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement