题目
Given a collection of distinct integers, return all possible permutations.
思路
使用backtracking

代码
class Solution {
public List<List<Integer>> permute(int[] nums) {
List<List<Integer>> res = new ArrayList<List<Integer>>();
List<Integer> list = new ArrayList<Integer>();
backtrack(nums,res,list);
return res;
}
public void backtrack(int[] nums,List<List<Integer>> res,List<Integer> templist){
if(templist.size() == nums.length){
res.add(new ArrayList<Integer>(templist));
}
else{
for(int i=0;i<nums.length;i++){
if(!templist.contains(nums[i])){
templist.add(nums[i]);
backtrack(nums,res,templist);
templist.remove(templist.size()-1);
}
}
}
}
}
网友评论