数据结构课程设计(皇后问题).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构课程设计(皇后问题)

课 程 设 计 报 告 课程名称 数据结构课程设计 课题名称 皇后问题 专 业 信息与计算科学 班 级 信息科学1201 学 号 201210010115 姓 名 宋康 指导教师   刘长松 陈华光 陈多2014年 月日 课程设计任务书 课程名称 数据结构课程设计 课 题 皇后问题 专业班级 信息科学1201 学生姓名 宋康 学 号 201210010115 指导老师 刘长松 陈华光 陈多 审 批 任务书下达日期: 2014年 月 日2014年 月 日 一、设计内容与设计要求 1.设计内容: 1)问题描述 ? 2)实现提示 ????从第1行起逐行放置皇后,每放置一个皇后均需要依次对第1.2,… 由于回溯求解的规则是“后进先出”,因此要用到栈。 ? 2.设计要求: 课程设计报告规范 1)需求分析 a.程序的功能。 b.输入输出的要求。 2)概要设计 程序由哪些模块组成以及模块之间的层次结构、各模块的调用关系;每个模块的功能。 课题涉及的数据结构和数据库结构;即要存储什么数据,这些数据是什么样的结构,它们之间有什么关系等。 3)详细设计 a.采用C语言定义相关的数据类型。 b.写出各模块的类C码算法。 c.画出各函数的调用关系图、主要函数的流程图。 4)调试分析以及设计体会 a.测试数据:准备典型的测试数据和测试方案,包括正确的输入及输出结果和含有错误的输入及输出结果。 b.程序调试中遇到的问题以及解决问题的方法。 c.课程设计过程经验教训、心得体会。 5)使用说明 用户使用手册:说明如何使用你编写的程序,详细列出每一步的操作步骤。 6)书写格式 见附带说明。 7)附录 a.参考书目 b.源程序清单(带注释) 考核方式 指导老师负责验收程序的运行结果,并结合学生的动手能力创新精神报告综合考评优、良、中、及格和不及格程序结构合理与否(程序(0%)(0%)独立完成情况(0%) ① 运行所设计的系统。 ② 回答有关问题。 ③ 提交课程设计报告纸质稿。 ④ 提交源程序、设计报告文档电子稿。 ⑤ 依内容的创新程度,完善程序情况及对程序讲解情况打分。 二、进度安排 17周周一下午14:30-18:30 信科1101.1102 E513 17周周三上午8:00-11:30 信科1101.1102 E513 17周周五上午8:00-11:30 信科1101.1102 E513 目录 一、 课题叙述 6 1.1 课题的来源 6 1.2面对的问题 6 二、 6 2.1功能需求 6 三、 设计 四、 7 4.1算法描述及详细流程图 7 4.2算法流程图 8 五、 运行结果 8 六、 结果分析 9 9八、 附录(源程序) 10 一、课题综述 1. 1 课题的来源 ?八皇后问题是一个古老而著名的问题,该问题是十九世纪著名的数学家高斯1850年提出的。 在国际象棋中,皇后是最有权利的一个棋子;只要别的棋子在它的同一行或同一列或同一斜线(正斜线或反斜线)上时,它就能把对方棋子吃掉。所以高斯提出了一个问题:在8*8的格的国际象棋上摆放八个皇后,使其不能相互攻击,即任意两个皇后都不能处于同一列、同一行、或同一条斜线上面,问共有多少种解法。计算机发明后,将8后演变成n后,可以想到n的最小值应为4。 ? 1. 2? 面对的问题 1)???解决冲突问题: 这个问题包括了行,列,两条对角线; 列:规定每一列放一个皇后,不会造成列上的冲突; 行:当第I行被某个皇后占领后,则同一行上的所有空格都不能再放皇后,要把以I为下标的标记置为被占领状态; 2)?使用数据结构的知识,用法解决问题。 ? 2.1功能需求 ????当运行程序时,在屏幕上显示每一种方法n个皇后的相对位置,要用比较直观?的界面显示 三、概要设计 ? ?????最容易想到的方法就是有序地从第 1 列的第 1 行开始,尝试放上一个皇后,然后再尝试第 2 列的第几行能够放上一个皇后,如果第 2 列也放置成功,那么就继续放置第 3 列,如果此时第3列没有一行可以放置一个皇后,说明目前为止的尝试是无效的(即不可能得到最终解),那

文档评论(0)

shenlan118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档