- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法分析和设计任务书
1 课程设计目标
《算法分析和设计》是信息和计算科学专业集中实践性步骤之一,是学习完《算法分析和设计》课程后进行一次全方面综合练习。其目标是:
(1)要达成理论和实际应用相结合,使学生能够学会常见多个算法思想和对算法进行分析,能把现实世界中实际问题在计算机内部表示出来,并培养良好程序设计技能。
(2)在实践中认识为何要学习算法分析和设计,掌握算法设计思想和程序设计语言之间关系,是前面所学知识综合和回顾。
2 课程设计基础要求
(1)了解并掌握数据结构和算法设计方法,含有初步独立分析和设计能力;
(2)初步掌握软件开发过程问题分析、系统设计、程序编码、测试等基础方法和技能;
(3)提升综合利用所学理论知识和方法独立分析和处理问题能力;
(4)训练用系统见解和软件开发通常规范进行软件开发,培养软件工作者所应含有科学工作方法和作风;
(5)设计题目要求达成一定工作量,并含有一定深度和难度;
(6)编写出课程设计说明书。
3 课程设计内容及安排
(1)问题分析和任务定义:依据设计题目标要求,充足地分析和了解问题,明确问题要求做什么?(而不是怎么做?)限制条件是什么?
(2)逻辑设计:对问题描述中包含操作对象定义对应数据类型,并根据以数据结构为中心标准划分模块,定义主程序模块和各抽象数据类型。逻辑设计结果应写出每个抽象数据类型定义(包含数据结构描述和每个基础操作功效说明),各个关键模块算法,并画出模块之间调用关系图;
(3)具体设计:定义对应存放结构并写出各函数伪代码算法。在这个过程中,要综合考虑系统功效,使得系统结构清楚、合理、简单和易于调试,抽象数据类型实现尽可能做到数据封装,基础操作规格说明尽可能明确具体。具体设计结果是对数据结构和基础操作进行深入求精,写出数据存放结构类型定义,写出函数形式算法框架;
(4)程序编码:把具体设计结果深入求精为程序设计语言程序。同时加入部分注解和断言,使程序中逻辑概念清楚;
(5)程序调试和测试:采取自底向上,分模块进行,即先调试低层函数。能够熟练掌握调试工具多种功效,设计测试数据确定疑点,经过修改程序来证实它或绕过它。调试正确后,认真整理源程序及其注释,形成格式和风格良好源程序清单和结果;
(6)结果分析:程序运行结果包含正确输入及其输出结果和含有错误输入及其输出结果。算法时间、空间复杂性分析;
(7)撰写课程设计汇报。
4 课程设计汇报内容
设计结束后要写出课程设计汇报,以作为整个课程设计评分书面依据和存档材料。设计汇报以要求格式电子文档书写、打印并装订,排版及图、表要清楚、工整,内容及要求详见“课程设计汇报规范”, 其中“3. 课程设计汇报内容”中通常应包含以下内容:
4.1 需求分析
以无歧义陈说说明程序设计任务,强调是程序要做什么?并明确要求:
(1) 输入形式和输入值范围;
(2) 输出形式;
(3) 程序所能达成功效;
(4) 测试数据:包含正确输入和输出结果,含有错误输入和输出结果。
4.2 概要设计
说明本程序中用到全部抽象数据类型定义、主控程序步骤和各程序模块之间层次(调用)关系。
4.3 具体设计
实现概要设计中定义全部数据类型,对每个操作只需要写出伪代码算法;对主程序和其它模块也全部需要写出伪代码算法(伪代码算法达成具体程度提议为:根据伪代码算法能够在计算机键盘直接输入高级程序设计语言程序));可采取步骤图、N–S 图或PAD 图进行描述,画出函数和过程调用关系图。
4.4 调试分析
内容包含:调试过程中碰到问题是怎样处理和对设计和实现回顾讨论和分析;
4.5 测试结果
列出你测试结果,包含输入和输出。这里测试数据应该完整和严格,最好多于需求分析中所列。
4.6 用户使用说明
说明怎样使用你编写程序,具体列出每一步操作步骤。
5 课程设计考评方法及成绩评定
课程设计结束时,要求学生写出课程设计汇报(可不附源程序),可运行软件系统(包含源程序)。
课程设计成绩分两部分,设计汇报及软件系统占70%,集中上机占30%。
6 进度安排
整体设计和具体设计 2天
编写代码 2天
调试和测试 2天
课程设计汇报书写 1天
演示软件和答辩 另行安排
7 课程设计题目
7.1 棋盘覆盖
【间题描述】
在一个2k×2k 个方格组成棋盘中,恰有一个方格和其它方格不一样,称该方格为一特殊方格,且称该棋盘为一特殊棋盘。在棋盘覆盖问题中,要用图示4种不一样形态L型骨牌覆盖给定特殊棋盘上除特殊方格以外全部方格,且任何2个L型骨牌不得重合覆盖。
【基础要求】
(1)输入k和特殊方格所在行号dr和特殊方格列号dc。
(2)要求输出每一步用什么形态L型骨牌覆盖,覆盖后得到棋盘图形。
(3)假如输出结果只是用矩阵表示则为良好,用图形表示则为优。
【测试数据】
【实现提醒】
使用分治策略,把
文档评论(0)