赞
踩
深入掌握栈应用的算法设计
编写一个程序,求解n皇后问题,即在n*n方格棋盘上放置n个皇后,要求每个皇后不同行、不同列、不同左右对角线
#include "stdio.h" #include "stdlib.h" #include "io.h" #include "math.h" #include "time.h" #define OK 1 #define ERROR 0 #define TRUE 1 #define FALSE 0 #define MAXSIZE 20 /* 存储空间初始分配量 */ typedef int Status; typedef int SElemType; /* SElemType类型根据实际情况而定,这里假设为int */ /* 顺序栈结构 */ typedef struct { SElemType data[MAXSIZE]; int top; /* 用于栈顶指针 */ }SqStack; int count = 0; /*调用此方法用于检测是否符合N皇后规则*/ int placeQueen(SqStack s, int i, int j) { //测试(i、j)是否与1->i-1皇后有冲突(i:行) /*a为函数的返回值,0是否1是是* *k为列数,默认为第一列 */ int a
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。