- 22
- 0
- 约2.61千字
- 约 5页
- 2016-12-15 发布于江苏
- 举报
数据结构实验报告
实验名称:实验2 利用栈结构实现八皇后问题
学生姓名: 廖宁
班 级: 2009211114
班内序号: 18
学 号:日 期: 2010年11月18日
实验要求
八皇后问题是19世纪著名的数学家高斯于1850年提出的。他的问题是:在8*8的棋盘上放置8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列、同一斜线上。请设计算法打印所有可能的摆放方法。
提示:
可以使用递归或非递归两种方法实现。
实现一个关键算法,判断任意两个皇后是否在同一行、同一列和同一斜线上。
2. 程序分析
程序工程包含一个模板类函数实现定义的源文件forthelove.cpp和测试源文件sbsuowang.cpp。
2.1 存储结构
存储结构为栈。
2.2 关键算法分析
(1)
判断在第row行第column列摆放皇后是否非法,采取定行不定列的方法,列相等的算法为position[i]=colume,对角线相等有两种情况:一是position在上则row-i=colume-position[i];
二是position在下,row-i=position[i]-colume.加入能放皇后,列和对角线上值都不能相等。
具体代码如下:
int IsIllegal(int row, int colu
您可能关注的文档
最近下载
- 任务一 制定产品与客户服务策略.pptx VIP
- 《大学语文》第四章 戏剧(另有配套教案).pptx VIP
- GB50242-2002建筑给水排水及采暖工程施工质量.doc VIP
- 会员模式培训课件.ppt VIP
- (完整版)《建筑给水排水及采暖工程施工质量验收规范》(GB50242-2002).docx VIP
- (四调)武汉市2026届高三年级四月调研考试化学试卷(含答案).pdf
- 压力容器设计质量保证手册.doc VIP
- 2026年无锡中考地理备考全指南(考点+真题+计划+技巧).docx VIP
- 武汉市2026届高三(四调)生物试卷(含答案及解析).pdf
- 医疗废物的分类与处理流程幻灯片.ppt VIP
原创力文档

文档评论(0)