- 5
- 0
- 约小于1千字
- 约 6页
- 2023-10-12 发布于湖北
- 举报
1.实验要求
【实验目的】
进一步掌握指针、模板类、异常处理的使用
掌握栈的操作的实现方法
掌握队列的操作的实现方法
学习使用栈解决实际问题的能力
学习使用队列解决实际问题的能力
【实验内容】
利用栈结构实现八皇后问题。
八皇后问题19世纪著名的数学家高斯于1850年提出的。他的问题是:在8*8的棋盘上放置8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列、同一斜线上。请设计算法打印所有可能的摆放方法。
提示:
1、可以使用递归或非递归两种方法实现
2、实现一个关键算法:判断任意两个皇后是否在同一行、同一列和同一斜线上
2. 程序分析
2.1 存储结构
存储结构:栈(递归)
2.2 关键算法分析
【设计思想】
由于八皇后问题,可以分解成算法相同的子问题,所以使用递归的方法
【伪代码】
输入皇后个数n
k=1
判断k是否大于n
3.1 是:打印一组可能
3.2 否:循环行位置1~n
判断该位置是否符合要求,若符合记录q[k]的坐标y值
k+1 重复3
【关键算法】
1、递归
void Queen::Queens(int k,int n)
{ int i;
if(kn)
{ Print(n);
count();
}
else
{
for(i=1;i=n;i++)
if(Isavailab
您可能关注的文档
最近下载
- GMP厂房设施与设备系统介绍.pptx VIP
- 四川省南充高级中学2025-2026学年高二上学期11月期中考试物理试卷.pdf VIP
- GMP第四章厂房设施PPT课件.pptx VIP
- 市政工程施工工期定额(定稿) .docx VIP
- 四川省南充高级中学2025-2026学年高二上学期11月期中考试英语试卷.pdf VIP
- 中国嗜酸性粒细胞增多症诊断和治疗指南(2024版)解读PPT课件.pptx VIP
- 学堂在线 思想道德与法治 章节测试答案.docx VIP
- ISO_IEC_IEEE 15288-2015 系统和软件工程 — 生命周期过程(中文版翻译).doc VIP
- 《朝花夕拾》经典青少年文学读物.pdf VIP
- 市政工程施工工期定额(定稿).pdf VIP
原创力文档

文档评论(0)