递归—八皇后问题

≡放荡痞女 提交于 2019-12-03 10:11:21

八皇后问题

说明:

  八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即:任意两个皇后都不能处于同一行、同一列或统一斜线上,问有多少中摆法(92)

 

 

 思路分析:

(1)第一个皇后先放第一行第一列

(2)第二个皇后放在第二行第一列、然后判断是否OK,如果不OK,继续放在第二列、第三列、依次把所有列都放完,找到一个合适

(3)当得到一个正确解时,在栈回退到上一个栈时,就会开始回溯,即将第一个皇后,放到第一列的所有正确解,全部得到。

(4)然后回头继续第一个皇后放到第二列,后面继续循环执行1,2,3,4的步骤

(5)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!