0103-2020-LEETCODE-46- gama completa

// Escribir una amplia gama de matrices, pensar en usar recursividad para resolver, pero no escribir.
La solución oficial a un problema en la // LEETCODE está dando marcha atrás de forma recursiva, tiene que utilizar la función auxiliar.
// código de escritura directa

public List<List<Integer>> permute(int[] nums){
	List<List<Integer>> output = new LinkedList<Integer>();
	ArrayList<Integer> num_list = new Arraylist<Integer>();
	for(int num:nums){
		num_list.add(num);
	}
	backtrack(int n,ArrayList<Integer> num_list,List<List<Integer>> output,int first);


	
}
public void backtrack(int n,ArrayList<Integer> num_list,List<List<Integer>> output,int first){
	//递归的终止条件是什么呢?
	if(first == n){
		output.add(new ArrayList(nums_list));
	}
	for(int i = first;i < n;i++){
		Collections.swap(nums_first,first,i);
		backtrack(n,nums,output,first + 1);
		Collections.swap(nums,first,i);
	}
}
Publicado 98 artículos originales · ganado elogios 0 · Vistas 2211

Supongo que te gusta

Origin blog.csdn.net/weixin_43221993/article/details/103817363
Recomendado
Clasificación