C数据结构课程设实例_08.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文档。上传文档
查看更多
C数据结构课程设实例_08,砌体结构课程设计实例,数据库课程设计实例,数据结构实例教程,数据结构实例,数据结构应用实例,数据结构编程实例,数据结构的应用实例,数据结构实例教程pdf,数据结构课程设计

?》? 《C数据结构》课程设计方案 课题: N皇后的问题 类型: C或C++ 周期: 专业: 计算机或非计算机 状态 修订人 修改日期 版本 备注 正式 尚学堂 2015/5/7 1.0 目  录 1 引 言 1 1.1课程设计课题 1 1.2课程设计目的 1 1.3 软硬件环境需求 1 1.4课堂控制说明 1 1.5 课程设计时间安排 1 2. 课设流程 2 2.1需求分析 2 2.2栈代码实现 3 2.3分隔符检查实现 3 3. 总结延伸 3 1 引 言 本文档描述了如何使用实例教学方式让学生理解和掌握数据结构中栈的使用。从而可以让学生对所学知识有更具体的运用。本文档只是针对某一个具体知识点的讲解,并不涉及项目的开发流程以及更多细节,故只能用做为时较短的课程设计参考文档。 1.1课程设计课题 N皇后问题描述: 求出在一个nXn的棋盘上,放置n个不能互相捕捉的国际象棋“皇后”的所有布局。这是来源于国际象棋的一个问题。皇后可以沿着纵横和两条斜线4个方向相互捕捉。一个皇后放在棋盘的第四行第三列位置上,则棋盘上凡打“√”的位置上的皇后就能与这个皇后相互捕捉。 1.2课程设计目的 通过数据结构课程设计教学,让学生熟悉数据结构在程序算法中的作用、了解数据结构对程序整体性能的影响;让学生掌握数据结构的应用技巧;并能运用经典的数据结构解决现实问题。最终达到提高分析问题、解决问题和实践应用能力。 1.3 软硬件环境需求 需求名称 详细要求 开发软件 VS 或Eclipse for c 等IDE工具 运行平台 Windows … 1.4课堂控制说明 因方案是一个理论可行的适合于具有掌握了一定知识前提条件的学生群体,当面对不同群体时,任课老师应该能够随时根据学生的接收能力及时调整教学方案,并能够随时对所要开发的项目课题进行动态的功能添加或删减。并能根据学生的反馈信息及时改变教学进程,或随时增加或削弱其难度 1.5 课程设计时间安排 本计划书课题的时间安排只是常规形态下的一个参考,具体的时间细节可在现实情况下做相应的调整。 把知识点分成有内在联系的几个小知识点,以阶段援课方式层层推进,因果循环的方式加强学生的理解。 时间 知识点 时间 阶段目标 阶段一 课题需求讲解 明确目标 阶段二 设计方案选择(一个需求总会有很多可实施方案) 拓展学生发散思维,确定最终设计方案 阶段三 实例讲解 明确学有所用。增加兴趣 阶段四 实例讲解 磨刀不误砍柴工 阶段五 实例讲解 代码编写 阶段六 实例讲解 学以致用 阶段七 总结并延伸 扩展教学 阶段八 验收 2. 课设流程 2.1案例分析 需求已经在本文档前面提出,一个需求就是一个问题,对于任何问题的解决方案总是有很多。与现实处理问题的道理一样,人们总是试图找到一条快速且高效率的方案。在程序的世界里解决问题需要从时间度和空间度两个平面上考虑如何让程序运行更有效率。 模块名称 装箱问题 模块编号 Use Case01 业务概述 如问题描述 事件流 输出结题 输入数据 数据名称 实际含义 数据类型 数据格式 数据约束 无 处理数据 一个合适的解应是在每列、每行上只有一个皇后,且一条斜线上也只有一个皇后。 求解过程从空配置开始。在第1列至第m列为合理配置的基础上,再配置第m+1列,直至第n列配置也是合理时,就找到一个解。接着改变第n列配置,希望获得下一个解。 另外在任一列上,可能有n种配置。开始时配置在第一行,以后改变时,顺次选择第2行,第3行……直到第n行。当第n行配置也找不到一个合理的配置时,就要回溯,去改变前一列的配置。 在编写程序之前,先确定边式棋盘的数据结构。比较直观的方法是采用一个二维数组,但仔细观察就会发现,这种表示方法给调整候选解及检查其合理性带来困难。更好的方法乃是尽可能直接表示那些常用的 信息。对于本题来说,“常用信息”并不是皇后的具体位置,而是“一个皇后是否已经在某行和某条斜线合理的安置好了”。因在某一列上恰好放一个皇后,引入一个一维数组(col[]),值col[i]表示在棋盘第i列,col[i]行又一个皇后。例如:col[3]=4,就表示在棋盘的第3列、第4行上有一个皇后。另外,为了使程序在找完了全部解后回溯刀最初位置,设定col[0]的初值为0 ,当回溯到第0列时,说明程序已求得全部解,结束程序运行。 输出要素 输出所有结果 其它事件 给出数据结构和算法框架。数据结构应该完整描述出处理对象的逻辑关系,以及所选择的存储结构,算法可以用伪程序或流程图来描述其基本设计思想。 调试分析,根据程序调试过程中的几组测试数据,记录其运行结果,写出调试过程中

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档