import java.util.Scanner;

public class Nqueens {
private boolean verify(int[] arr,int i) {
// TODO Auto-generated method stub
for (int j = 1; j != i; j++) {
if(j == i) {
continue;
}
if(arr[i]==arr[j]||Math.abs(i-j)==Math.abs(arr[i]-arr[j])) {
return false;
}
}
return true;
} private void nqueens(int[] arr,int i,int n) {
// TODO Auto-generated method stub
for (int j = 1; j < arr.length; j++) {
arr[i] = j;
if(verify(arr,i)) {
if(i == n) {
System.out.println("--------------------");
for (int k = 1; k < arr.length; k++) {
System.out.println("---" + k + "---" + arr[k]);
}
}else {
nqueens(arr,i+1,n);
}
}
}
} public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String num = s.next();
int n = Integer.parseInt(num);
int[] arr = new int[n+1];
new Nqueens().nqueens(arr,1,n);
}
}

  运行结果:

8
--------------------
---1---1
---2---5
---3---8
---4---6
---5---3
---6---7
---7---2
---8---4
--------------------
---1---1
---2---6
---3---8
---4---3
---5---7
---6---4
---7---2
---8---5
--------------------
---1---1
---2---7
---3---4
---4---6
---5---8
---6---2
---7---5
---8---3
--------------------
---1---1
---2---7
---3---5
---4---8
---5---2
---6---4
---7---6
---8---3
--------------------
---1---2
---2---4
---3---6
---4---8
---5---3
---6---1
---7---7
---8---5
--------------------
---1---2
---2---5
---3---7
---4---1
---5---3
---6---8
---7---6
---8---4
--------------------
---1---2
---2---5
---3---7
---4---4
---5---1
---6---8
---7---6
---8---3
--------------------
---1---2
---2---6
---3---1
---4---7
---5---4
---6---8
---7---3
---8---5
--------------------
---1---2
---2---6
---3---8
---4---3
---5---1
---6---4
---7---7
---8---5
--------------------
---1---2
---2---7
---3---3
---4---6
---5---8
---6---5
---7---1
---8---4
--------------------
---1---2
---2---7
---3---5
---4---8
---5---1
---6---4
---7---6
---8---3
--------------------
---1---2
---2---8
---3---6
---4---1
---5---3
---6---5
---7---7
---8---4
--------------------
---1---3
---2---1
---3---7
---4---5
---5---8
---6---2
---7---4
---8---6
--------------------
---1---3
---2---5
---3---2
---4---8
---5---1
---6---7
---7---4
---8---6
--------------------
---1---3
---2---5
---3---2
---4---8
---5---6
---6---4
---7---7
---8---1
--------------------
---1---3
---2---5
---3---7
---4---1
---5---4
---6---2
---7---8
---8---6
--------------------
---1---3
---2---5
---3---8
---4---4
---5---1
---6---7
---7---2
---8---6
--------------------
---1---3
---2---6
---3---2
---4---5
---5---8
---6---1
---7---7
---8---4
--------------------
---1---3
---2---6
---3---2
---4---7
---5---1
---6---4
---7---8
---8---5
--------------------
---1---3
---2---6
---3---2
---4---7
---5---5
---6---1
---7---8
---8---4
--------------------
---1---3
---2---6
---3---4
---4---1
---5---8
---6---5
---7---7
---8---2
--------------------
---1---3
---2---6
---3---4
---4---2
---5---8
---6---5
---7---7
---8---1
--------------------
---1---3
---2---6
---3---8
---4---1
---5---4
---6---7
---7---5
---8---2
--------------------
---1---3
---2---6
---3---8
---4---1
---5---5
---6---7
---7---2
---8---4
--------------------
---1---3
---2---6
---3---8
---4---2
---5---4
---6---1
---7---7
---8---5
--------------------
---1---3
---2---7
---3---2
---4---8
---5---5
---6---1
---7---4
---8---6
--------------------
---1---3
---2---7
---3---2
---4---8
---5---6
---6---4
---7---1
---8---5
--------------------
---1---3
---2---8
---3---4
---4---7
---5---1
---6---6
---7---2
---8---5
--------------------
---1---4
---2---1
---3---5
---4---8
---5---2
---6---7
---7---3
---8---6
--------------------
---1---4
---2---1
---3---5
---4---8
---5---6
---6---3
---7---7
---8---2
--------------------
---1---4
---2---2
---3---5
---4---8
---5---6
---6---1
---7---3
---8---7
--------------------
---1---4
---2---2
---3---7
---4---3
---5---6
---6---8
---7---1
---8---5
--------------------
---1---4
---2---2
---3---7
---4---3
---5---6
---6---8
---7---5
---8---1
--------------------
---1---4
---2---2
---3---7
---4---5
---5---1
---6---8
---7---6
---8---3
--------------------
---1---4
---2---2
---3---8
---4---5
---5---7
---6---1
---7---3
---8---6
--------------------
---1---4
---2---2
---3---8
---4---6
---5---1
---6---3
---7---5
---8---7
--------------------
---1---4
---2---6
---3---1
---4---5
---5---2
---6---8
---7---3
---8---7
--------------------
---1---4
---2---6
---3---8
---4---2
---5---7
---6---1
---7---3
---8---5
--------------------
---1---4
---2---6
---3---8
---4---3
---5---1
---6---7
---7---5
---8---2
--------------------
---1---4
---2---7
---3---1
---4---8
---5---5
---6---2
---7---6
---8---3
--------------------
---1---4
---2---7
---3---3
---4---8
---5---2
---6---5
---7---1
---8---6
--------------------
---1---4
---2---7
---3---5
---4---2
---5---6
---6---1
---7---3
---8---8
--------------------
---1---4
---2---7
---3---5
---4---3
---5---1
---6---6
---7---8
---8---2
--------------------
---1---4
---2---8
---3---1
---4---3
---5---6
---6---2
---7---7
---8---5
--------------------
---1---4
---2---8
---3---1
---4---5
---5---7
---6---2
---7---6
---8---3
--------------------
---1---4
---2---8
---3---5
---4---3
---5---1
---6---7
---7---2
---8---6
--------------------
---1---5
---2---1
---3---4
---4---6
---5---8
---6---2
---7---7
---8---3
--------------------
---1---5
---2---1
---3---8
---4---4
---5---2
---6---7
---7---3
---8---6
--------------------
---1---5
---2---1
---3---8
---4---6
---5---3
---6---7
---7---2
---8---4
--------------------
---1---5
---2---2
---3---4
---4---6
---5---8
---6---3
---7---1
---8---7
--------------------
---1---5
---2---2
---3---4
---4---7
---5---3
---6---8
---7---6
---8---1
--------------------
---1---5
---2---2
---3---6
---4---1
---5---7
---6---4
---7---8
---8---3
--------------------
---1---5
---2---2
---3---8
---4---1
---5---4
---6---7
---7---3
---8---6
--------------------
---1---5
---2---3
---3---1
---4---6
---5---8
---6---2
---7---4
---8---7
--------------------
---1---5
---2---3
---3---1
---4---7
---5---2
---6---8
---7---6
---8---4
--------------------
---1---5
---2---3
---3---8
---4---4
---5---7
---6---1
---7---6
---8---2
--------------------
---1---5
---2---7
---3---1
---4---3
---5---8
---6---6
---7---4
---8---2
--------------------
---1---5
---2---7
---3---1
---4---4
---5---2
---6---8
---7---6
---8---3
--------------------
---1---5
---2---7
---3---2
---4---4
---5---8
---6---1
---7---3
---8---6
--------------------
---1---5
---2---7
---3---2
---4---6
---5---3
---6---1
---7---4
---8---8
--------------------
---1---5
---2---7
---3---2
---4---6
---5---3
---6---1
---7---8
---8---4
--------------------
---1---5
---2---7
---3---4
---4---1
---5---3
---6---8
---7---6
---8---2
--------------------
---1---5
---2---8
---3---4
---4---1
---5---3
---6---6
---7---2
---8---7
--------------------
---1---5
---2---8
---3---4
---4---1
---5---7
---6---2
---7---6
---8---3
--------------------
---1---6
---2---1
---3---5
---4---2
---5---8
---6---3
---7---7
---8---4
--------------------
---1---6
---2---2
---3---7
---4---1
---5---3
---6---5
---7---8
---8---4
--------------------
---1---6
---2---2
---3---7
---4---1
---5---4
---6---8
---7---5
---8---3
--------------------
---1---6
---2---3
---3---1
---4---7
---5---5
---6---8
---7---2
---8---4
--------------------
---1---6
---2---3
---3---1
---4---8
---5---4
---6---2
---7---7
---8---5
--------------------
---1---6
---2---3
---3---1
---4---8
---5---5
---6---2
---7---4
---8---7
--------------------
---1---6
---2---3
---3---5
---4---7
---5---1
---6---4
---7---2
---8---8
--------------------
---1---6
---2---3
---3---5
---4---8
---5---1
---6---4
---7---2
---8---7
--------------------
---1---6
---2---3
---3---7
---4---2
---5---4
---6---8
---7---1
---8---5
--------------------
---1---6
---2---3
---3---7
---4---2
---5---8
---6---5
---7---1
---8---4
--------------------
---1---6
---2---3
---3---7
---4---4
---5---1
---6---8
---7---2
---8---5
--------------------
---1---6
---2---4
---3---1
---4---5
---5---8
---6---2
---7---7
---8---3
--------------------
---1---6
---2---4
---3---2
---4---8
---5---5
---6---7
---7---1
---8---3
--------------------
---1---6
---2---4
---3---7
---4---1
---5---3
---6---5
---7---2
---8---8
--------------------
---1---6
---2---4
---3---7
---4---1
---5---8
---6---2
---7---5
---8---3
--------------------
---1---6
---2---8
---3---2
---4---4
---5---1
---6---7
---7---5
---8---3
--------------------
---1---7
---2---1
---3---3
---4---8
---5---6
---6---4
---7---2
---8---5
--------------------
---1---7
---2---2
---3---4
---4---1
---5---8
---6---5
---7---3
---8---6
--------------------
---1---7
---2---2
---3---6
---4---3
---5---1
---6---4
---7---8
---8---5
--------------------
---1---7
---2---3
---3---1
---4---6
---5---8
---6---5
---7---2
---8---4
--------------------
---1---7
---2---3
---3---8
---4---2
---5---5
---6---1
---7---6
---8---4
--------------------
---1---7
---2---4
---3---2
---4---5
---5---8
---6---1
---7---3
---8---6
--------------------
---1---7
---2---4
---3---2
---4---8
---5---6
---6---1
---7---3
---8---5
--------------------
---1---7
---2---5
---3---3
---4---1
---5---6
---6---8
---7---2
---8---4
--------------------
---1---8
---2---2
---3---4
---4---1
---5---7
---6---5
---7---3
---8---6
--------------------
---1---8
---2---2
---3---5
---4---3
---5---1
---6---7
---7---4
---8---6
--------------------
---1---8
---2---3
---3---1
---4---6
---5---2
---6---5
---7---7
---8---4
--------------------
---1---8
---2---4
---3---1
---4---3
---5---6
---6---2
---7---7
---8---5

2018.4.24 java实现8皇后算法的更多相关文章

  1. 8皇后以及N皇后算法探究,回溯算法的JAVA实现,非递归,循环控制及其优化

    上两篇博客 8皇后以及N皇后算法探究,回溯算法的JAVA实现,递归方案 8皇后以及N皇后算法探究,回溯算法的JAVA实现,非递归,数据结构“栈”实现 研究了递归方法实现回溯,解决N皇后问题,下面我们来 ...

  2. Java国密相关算法(bouncycastle)

    公用类算法: PCIKeyPair.java /** * @Author: dzy * @Date: 2018/9/27 14:18 * @Describe: 公私钥对 */ @Data @AllAr ...

  3. 20172328 2018—2019《Java软件结构与数据结构》第二周学习总结

    20172328 2018-2019<Java软件结构与数据结构>第二周学习总结 概述 Generalization 本周学习了第三章集合概述--栈和第四章链式结构--栈.主要讨论了集合以 ...

  4. java sm4国密算法加密、解密

      java sm4国密算法加密.解密 CreationTime--2018年7月5日09点20分 Author:Marydon 1.准备工作 所需jar包: bcprov-jdk15on-1.59. ...

  5. 2018年最新Java面试题及答案整理(持续完善中…)

    2018年最新Java面试题及答案整理(持续完善中…) 基础篇 基本功 面向对象特征 封装,继承,多态和抽象 封装封装给对象提供了隐藏内部特性和行为的能力.对象提供一些能被其他对象访问的方法来改变它内 ...

  6. 数据结构与算法【Java】05---排序算法总结

    前言 数据 data 结构(structure)是一门 研究组织数据方式的学科,有了编程语言也就有了数据结构.学好数据结构才可以编写出更加漂亮,更加有效率的代码. 要学习好数据结构就要多多考虑如何将生 ...

  7. Java中的经典算法之冒泡排序(Bubble Sort)

    Java中的经典算法之冒泡排序(Bubble Sort) 神话丿小王子的博客主页 原理:比较两个相邻的元素,将值大的元素交换至右端. 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面.即在第一 ...

  8. Java中的查找算法之顺序查找(Sequential Search)

    Java中的查找算法之顺序查找(Sequential Search) 神话丿小王子的博客主页 a) 原理:顺序查找就是按顺序从头到尾依次往下查找,找到数据,则提前结束查找,找不到便一直查找下去,直到数 ...

  9. Java中的经典算法之选择排序(SelectionSort)

    Java中的经典算法之选择排序(SelectionSort) 神话丿小王子的博客主页 a) 原理:每一趟从待排序的记录中选出最小的元素,顺序放在已排好序的序列最后,直到全部记录排序完毕.也就是:每一趟 ...

随机推荐

  1. 未能加载文件或程序集“Oracle.DataAccess”或它的某一个 依赖项。如何解决?

    之前项目做大数据批量添加使用了OracleBulkCopy,这个是引用Oracle.DataAccess.Client的命名空间,所以项目要引用一个Oracle.DataAccess.dll, 但是运 ...

  2. lda topic number

    Hi Vikas -- the optimum number of topics (K in LDA) is dependent on a at least two factors: Firstly, ...

  3. inode占用100%时硬盘无法写入文件故障处理

    故障现象: 分区无法写入文件. 故障分析: 执行df -h命令发现空间占用不到50%,执行df -hi,发现某分区IUse%值为99%,说明innode已经用完,应该是某些目录下存在大量的小文件导致. ...

  4. TTL集成门电路工作原理和电压传输特性

    集成电路(Integrated Circuit 简称IC):即把电路中半导体器件,电阻,电容以及连线等制作在一块半导体基片上构成一个完整的电路,并封装到一个管壳内 集成电路的有点:体积小,重量轻,可靠 ...

  5. 【转】c++ make_pair函数使用

    [好记性不如烂笔头:在<C++ Templates>看到这个函数,发现正是前段时间写项目程序所要用到的,可惜当时还不知道有这个用法,当时是自己写了个结构体..]Utilities < ...

  6. JS时间戳和时间之间转换

    一.时间转换时间戳 var date = new Date(); //时间对象 var str = date.getTime(); //转换成时间戳 二.时间戳转换为时间 1.转换成形如 ‎2018‎ ...

  7. MyEclipse教程:使用UML创建模块库——第二部分(一)

    MyEclipse 在线订购年终抄底促销!火爆开抢>> [MyEclipse最新版下载] UML2建模文件存储在建模存储库中,建模可用于生成Java代码,或者可以从代码生成模型. 本教程介 ...

  8. VS2012里面使用EF框架的增删改查和分页的方法

    public class BaseRepository<T> where T : class    {        //实例化EF框架        DataModelContainer ...

  9. Spring学习四

    1先导入 Asject的jar包 2配置文件加入标签 ,并加入 <aop:aspectj-autoproxy proxy-target-class="true">(如果 ...

  10. kbmMW 5.08.01压力测试报告

    上图为客户端测试结果,运行14小时,无异常报告.基于洞主封装的HttpsysTransport,基于ClientQuery完成25万多次数据库访问操作,含查询并对查询结果进行修改及增加新记录,然后提交 ...