public class queque8 {
int max=8;
int array[]=new int[max];
static int cout=0;
public static void main(String[] args) {
queque8 q=new queque8();
q.check(0);
System.out.println(queque8.cout);
}
public void check(int n){
if(n==max){
piant();
return ;
}
for (int i = 0; i < max; i++) {
array[n]=i;
if(induge(n)){
check(n+1);
}
}
}
//检查
public boolean induge(int n){//判断n皇后是否可以放置
for (int i = 0; i < n; i++) {
if(array[i]==array[n]||Math.abs(i-n)==Math.abs(array[i]-array[n])){
return false;
}
}
return true;
}
private void piant(){
cout++;
for (int i = 0; i <max ; i++) {
System.out.print(array[i]);
}
System.out.println();
}
}
java实现8皇后的问题暴力解决 递归应用
最新推荐文章于 2023-02-04 19:42:03 发布