八皇后问题
我真的自己努力过了!!可还是不行!拜托了大家,实在不行帮我改一下也行!我的垃圾
我稍微改了一下,现在的问题是最后三行进不去+之前set过的没有办法check
queensRemaining 的意思是要放上去几个棋子。比如要放四个那queensRemaining就是4.
setQueens这个method必须还得确保如果棋盘上有其它棋子的话,不能清空,如果带着原本的棋子而导致没有结果的话,返回false
一个数组有 8 个元素的话, 是 [0 .. 7], 如果用 【8】就越界了。
应该是这错了
debug调试一下就能看出来了,楼主学习一下吧,很有必要了。
进入 if 判断之后,row = 7++,然后执行下面的 chessboard[8][col]就会越界
程序时从0开始的,你声明的 chessboard最大下标是 7 但是你循环里面判断的是小于8 那么 row 到7的时候也会进来 再执行 row++ 就越界了,你把for循环改成 row<7和 col<7