共查询到20条相似文献,搜索用时 31 毫秒
1.
利用一种简易的回溯算法,给出Java语言实现N皇后问题的完整程序,并在程序中准确地统计程序运行的时间开销。 相似文献
2.
利用回溯法,采用栈和队列实现计算N皇后解的一个新的非递归算法,并提出N皇后解的4个对称性质,重点分析5皇后的10个解之间的对称关系。然后利用对称性将搜索空间缩小为解空间的一半,给出计算N皇后问题的优化算法。理论分析和实验表明对称性可以明显提高N皇后问题的计算效率。 相似文献
3.
4.
C语言的N皇后算法的优化设计 总被引:1,自引:0,他引:1
胡川军 《电脑编程技巧与维护》2008,(17):9-10
N皇后问题是各类程序设计中的较著名的题目,本文利用C语言的知识,对N皇后问题的算法进行分析,并在程序设计的过程中,通过对算法的改进,提高程序的运行效率。 相似文献
5.
6.
回溯算法是基本的算法之一,其重要的思想是不断地用限界函数去测试正在构造的部分解向量,看是否导致合法解,回溯算法通常具有较高的时间复杂度,但对于至今除了穷尽搜索仍未找到其他的方法的问题,回溯算法是较为有效的方法.介绍了回溯算法,以及以经典的N皇后问题为例,讲解了用回溯算法求解问题,并分析了其空间复杂度,介绍了求解N皇后问题的改进回溯算法. 相似文献
7.
利用位操作运算的快速性,将位运算应用到N皇后问题的解决中,并给出了位运算求解N皇后问题的算法。该算法较好地提高了问题求解的速度。通过VC++环境实现,该算法比普通的递归回溯算法的速度平均提高了40倍左右。 相似文献
8.
通过对N皇后问题棋盘矩阵的旋转,改进了回溯算法,并通过计算机集群并行实现了N皇后的计数问题。考虑了棋盘矩阵顺时针旋转90°、180°和270°部分解存在重复的特性,改进了回溯方法,单机能够在15s内对16皇后问题进行计数。改进回溯算法的运算效率是顺序回溯法的4.69倍。然后通过固定前三行皇后的位置,可以把N皇后问题分成多个任务,实现了并行计算。在7个节点28个CPU的计算机集群上进行了实验,能够在8min内实现对20皇后的计数,能够在1小时零8分钟内实现21皇后的计数。N皇后计数这个经典问题,通过实现程序的标准化,可以成为检验计算机集群运算性能的基准。 相似文献
9.
10.
迄今为止,已有多种基于不同理论的八皇后问题算法.本文提出一种类似筛法的新算法:在棋盘某一格放上一个皇后的同时划去经过这一格的纵、横、及正负45度线上的所有格位,或者说筛去这些格位;后来的皇后只能放在未被占据或划去的格位上;若所有的皇后都能放入一个格位,则得到了一个布局或一个解.依据这种思路容易制定一个N皇后问题的简洁算法.实验结果表明,筛法算法的效率大大高于经典的回溯法. 相似文献
11.
对于八皇后问题,曾有许多人采用不同的程序设计语言和不同的算法加以解决,本文采用函数式程序设计语言Scheme的递归算法来解决八皇后的问题。 相似文献
12.
曾艳丽 《计算机光盘软件与应用》2010,(11)
八皇后问题是计算机科学中一个较经典的题目.本文提出用回溯法来解决八皇后问题,并给出了逻辑结构清晰、可读性强的递归算法,用C语言加以实现,得到了八皇后问题的12个真正不同的解. 相似文献
13.
王寅庆 《数字社区&智能家居》2009,(23)
N皇后问题是一个比较传统的组合搜寻问题,也是人工智能领域的一个经典的搜寻实例。给出了对N皇后问题求全部解的基于启发式的和以空间换时间的快速算法思路及其实现,将之同一般的回溯算法进行了时间耗费的比较,证明了算法是较优的算法;并讨论了算法的时间和空间复杂性。在个人电脑上,求16皇后全部解只需12.2秒。 相似文献
14.
秦丹 《数字社区&智能家居》2013,(26):5954-5957
N皇后问题是NP问题,以随机算法结合回溯求解该问题,能获得很好性能。算法性能与随机皇后数量的关系曲线呈U型。随机皇后数量须在宽度不大于20的特定范围内才能获得较好性能。100以内随n变大,最佳随机皇后数量从n-10到n-17缓慢变化。最佳随机皇后数量使算法能在常规时间内求解n>100的情况,远大于单纯回溯法求解规模30。由于回溯开销,提高随机算法性能的做法不能有效降低总用时。算法用时随n值递增的速度不断趋缓。 相似文献
15.
16.
吴丹 《电脑编程技巧与维护》2016,(19):33-34
N皇后问题是NP难题,一般求解的方法是回溯法。当问题规模较小时用回溯法能有效求解,但当问题规模较大时其求解时间消耗非常巨大。使用禁忌搜索算法来求解N皇后问题,用N皇后的冲突数为禁忌搜索算法的目标评价函数,通过实验得出结论:(1)使用禁忌搜索方法比使用回溯法更快速;(2)使用禁忌搜索方法更适合求解大规模棋盘的N皇后问题。同时提出了下一步需要完善和改进的地方。 相似文献
17.
18.
该文对经典的汉诺塔问题进行了详细的分析,并用C语言实现。通过问题的具体实现,使学习者了解问题的全过程,推广到一般。 相似文献
19.
8皇后问题是计算机算法设计领域里的经典问题。利用回溯算法和概率算法相结合的办法求解8皇后问题,通过实验分析第一次成功搜索到皇后位置的概率,以实验得出的数据为依据对现存的观点提出了质疑,并对实验数据进行了分析,肯定了本文数据的合理性。 相似文献