回溯算法1
其最著名的问题便是八皇后问题:将八位皇后放在一张8x8的棋盘上,使得每位皇后都无法吃掉别的皇后,(即任意两个皇后都不在同一条横线,竖线和斜线上),问一共有多少种摆法。
之前被误导走了好多弯路唉不说了说多了都是泪
八皇后问题最为困难的就是下一个皇后位置判断和返回而这便涉及回溯算法和递归思想:
void chess(int Queen[8][8],int n,int a)//放置皇后并进入下一个皇后的放置
{
int i, j, col;
for (col = 0; col < n; col++)
{
if (Queen[a][col] == 1)
{
if (check(Queen, a, col, n))
{
Queen[a][col] = 2;
if (a < n - 1)
chess(Queen, n, a + 1);
else if(a==n-1)
count++<