import java.util.*;
public class Solution {
public ArrayList<ArrayList<Integer>> permute(int[] num) {
ArrayList<ArrayList<Integer>> lists = new ArrayList<>();
ArrayList<Integer> list = new ArrayList<>();
boolean[] sign = new boolean[num.length];
dfs(num, lists, list, sign);
return lists;
}
public void dfs(int[] num, ArrayList<ArrayList<Integer>> lists, ArrayList<Integer> list, boolean[] sign){
if(list.size() == num.length){
lists.add(new ArrayList(list));
return;
}
for(int i = 0; i < num.length; i++){
if(!sign[i]){
sign[i] = true;
list.add(num[i]);
dfs(num, lists, list, sign);
sign[i] = false;
list.remove(list.size() - 1);
}
}
}
}
牛客-TOP101-BM55
最新推荐文章于 2024-08-29 22:25:44 发布