八皇后问题

时间:2018-12-31 12:00:00 资料大全 我要投稿

八皇后问题

  八皇后问题,输出了所有情况,不过有些结果只是旋转了90度而已,

八皇后问题

。(回溯算法的典型例题,是数据结构书上算法的具体实现,大家都亲自动手写过这个程序吗?)

  #define N 8

  int Board[N][N];

  int Valid(int i, int j) { // 判断下棋位置是否有效

  int k = 1;

  for(k=1; i>=k && j>=k;k++)

  if(Board[i-k][j-k]) return 0;

  for(k=1; i>=k;k++)

  if(Board[i-k][j]) return 0;

  for(k=1; i>=k && j+k if(Board[i-k][j+k]) return 0;

  return 1;

  }

  void Trial(int i, int n) { // 寻找合适下棋位置

  if(i == n) {

  for(int k=0; k for(int m=0; m printf(“%d “, Board[k][m]);

  printf(“\n”);

  }

  printf(“\n”);

  } else {

  for(int j=0; j Board[i][j] = 1;

  if(Valid(i,j))

  Trial(i+1, n);

  Board[i][j] = 0;

  }

  }

  }

  int main(int argc, char* argv[]) {

  Trial(0, N);

  }

【八皇后问题】相关文章:

1.《白雪皇后》读书笔记

2.《莫蓠皇后》读书笔记

3.职场的八个最经典问题

4.面试忌问八大问题

5.解决问题的八种职业能力

6.八大核心面试问题及答案

7.绝对实用的八个面试问题

8.最“不是问题”的问题