题目:给定一个不含重复数字的数组,返回其所有可能的全排列
难度:中等
class Solution {
List<List<Integer>> res=new LinkedList<>();
public List<List<Integer>> permute(int[] nums) {
LinkedList<Integer> track=new LinkedList<>();
backtrack(nums,track);
return res;
}
public void backtrack(int[] nums,LinkedList track){
if(track.size()==nums.length){
res.add(new LinkedList(track));
}
for(int i=0;i<nums.length;i++){
if(track.contains(nums[i])){
continue;
}
track.add(nums[i]);
backtrack(nums,track);
track.removeLast();
}
}
}