回溯法用于解决八皇后问题(递归)
发布时间
阅读量:
阅读量
利用回溯法解决八皇后问题(递归)
-
- 1.采用递归方式予以处理
1.用递归解决
#include <stdio.h>
#include <math.h>
int n,sum,a[20],b[20],c[40],d[40];
void putdata()//输出数据
{
for(int i = 1; i<=n; i++)
{
for(int j = 1; j<=n; j++)
{
if(a[i]==j)
printf(" Q");
else
printf(" *");
}
printf("\n");
}
printf("\n");
}
void tryqueen(int i)//找第i行皇后应该放第i行哪个位置
{
for(int j = 1; j<=n; j++)
{
if(b[j]==0 && c[i+j]==0 && d[i-j+n]==0)
{
a[i] = j;
b[j] = 1;
c[i+j] = 1;
d[i-j
全部评论 (0)
还没有任何评论哟~
