备忘——非重复元素全排列
关于不包含重复数字的全排列的备忘
利用回溯和交换让每个数字都可以放在每个位置上,符合全排列的定义。
public static void perm(int[] array,int start,int end){
if(start == end){
System.out.println(Arrays.toString(array));
}else{
for(int i = start;i <= end;i++){
swap(array,start,i);
perm(array,start + 1,end);
swap(array,start,i);//回溯
}
}
}
public static void swap(int[] array,int i,int j){
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}

浙公网安备 33010602011771号