46.全排列

2018-05-08  本文已影响0人  _道友请留步_

···
class Solution {
public List<List<Integer>> permute(int[] nums) {
List<List<Integer>> lists = new ArrayList<>();
List<List<Integer>> result = new ArrayList<>();
if(nums.length == 1){
List<Integer> list = new ArrayList<>();
list.add(nums[0]);
lists.add(list);
return lists;
}
int []copy = new int[nums.length-1];

    for(int i = 0 ; i < nums.length; i++){
        for(int j = 0; j < nums.length; j++){
            if(j < i){
                copy[j] = nums[j];
            } else if(j > i){
                copy[j-1] = nums[j];
            }
        }
        lists = permute(copy);
        for(int j = 0; j < lists.size(); j++){
            lists.get(j).add(nums[i]);
        }
        //return lists;
        result.addAll(lists);
    }
    return result;
}

}
···

上一篇 下一篇

猜你喜欢

热点阅读