八皇后问题综述

八皇后问题是一个以象棋为背景的问题:如何将八个皇后放在一个8×8的棋盘上,使得没有皇后可以直接吃掉其他皇后?为了达到这个目的,任何两个皇后都不能在同一水平、垂直或对角线上。八皇后问题可以推广到更一般的n皇后摆放问题:此时棋盘的大小变成了n×n,皇后的个数也变成了n,该问题有解当且仅当n = 1或n ≥ 4。

八皇后问题最早是由国际象棋大师Max Bethel于1848年提出的。后来包括高斯、康托在内的数学家们相继研究,并将其推广到更一般的N皇后放置问题。八皇后问题的第一个解法是弗朗茨·诺克在1850给出的。Nock也是第一个将这个问题扩展到更普遍的N皇后布局问题的人之一。1874年,S. Gandre提出了用行列式求解的方法,后来被J . W.L Glaisher改进。

在1972中,Ezger Dijstra以这个问题为例来说明他所谓的结构化编程能力。

八皇后问题出现在1990年代初著名的电子游戏的第七个来访者中。