a5, a6, a8, a7
a1, a5, a6, a2 | a3, a4, a8, a7
a1, a3, a7, a5 | a2, a4, a8, a6
有了这些条件后,再次结合题意,我们可知:只需要将...8个数字分别放到8个顶点上,所有数字都有可能放入任意一个顶点。换言之就是求这8个数字的所有排列,我的另一篇文章实现字符串的排列算法详细讲解了这个算法的实现思路,此处不过多赘述。...;
}
上述代码中没有列举permute方法的具体实现,对此感兴趣的开发者请移步:ArrayOfStrings.ts
八皇后问题
在一个8*8的棋盘上放置八个皇后,使得它们彼此之间不会互相攻击(...那我们就先把皇后定义出来,用一个数组来表示皇后在棋盘上的列号,分别用0~7(棋盘上有8个皇后)对这个数组进行初始化。
棋盘上每一行所放置的皇后,它都可以放在这一行的任意位置。...因为我们用的不同数字对数组进行的初始化,所以任意两个皇后肯定不同列。