您的位置:首页 > 其它

回溯法解决八皇后问题

2014-10-10 11:39 302 查看
//Eight Queen Problem Recall Way回溯法解决八皇后问题

#define max 8
int queen[max], sum = 0;
int check(int n)
{
int i;
for (i = 0; i < n; i++)
{
if (queen[i] == queen
|| abs(queen[i] - queen
) == (n - i))
return 1;
}
return 0;
}
void show()
{
for (int i = 0; i < max; i++)
{
cout << " " << queen[i];
}
sum++;
cout << endl;
}
void NQueens(int n)
{
int i;
for (i = 0; i < max; i++)
{
queen
= i;
if (!check(n))
{
if (n == max - 1)
{
show();
}
else
{
NQueens(n + 1);
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: