46.全排列
class Solution {
public List<List<Integer>> permute(int[] nums) {
List<List<Integer>> res=new ArrayList<>();
List<Integer> output=new ArrayList();
for(int num:nums){
output.add(num);
}
int n=nums.length;
backtrack(res,output,n,0);
return res;
}
public void backtrack(List<List<Integer>> res,List<Integer> output,int n,int first){
if(first==n){
res.add(new ArrayList(output));
return;
}
for(int i=first;i<n;i++){
Collections.swap(output,i,first);
backtrack(res, output, n, first+1);
Collections.swap(output,i,first);
}
}
}