好多遍了,这次放在这里
public class Solution {
public List<List<Integer>> permute(int[] nums) {
List<List<Integer>> results = new LinkedList<>();
if (nums == null || nums.length == 0) {
return results;
}
List<Integer> list = new LinkedList<>();
permuteHelper(results, list, nums);
return results;
}
private void permuteHelper(List<List<Integer>> results, List<Integer> list, int[] nums) {
if (list.size() == nums.length) {
results.add(new LinkedList<>(list));
return;
}
for (int i = 0; i < nums.length; i++) {
if (list.contains(nums[i])) {
continue;
}
list.add(nums[i]);
permuteHelper(results, list, nums);
list.remove(list.size() - 1);
}
}
}