代码
package qutue;
public class Demo1 {
int Max = 8;
int[] array = new int[Max];
int count=1;
public static void main(String[] args) {
Demo1 d=new Demo1();
d.check(0);
}
void printf(int array[]) {
for (int i = 0; i < array.length - 1; i++) {
System.out.print(array[i]);
}
System.out.print("第"+count+"个\n");
count++;
}
//判断是否冲突
boolean judge(int n) {
for (int i = 0; i < n; i++) {
if (array[i] == array[n] || Math.abs(n - i) == Math.abs(array[n] - array[i])) {
return false;
}
}
return true;
}
void check(int n) {
if (n == Max) {
printf(array);
return;
}
for (int i = 0; i < Max; i++) {
array[n]=i;
if(judge(n)){
check(n+1);
}
}
}
}