- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(数据结构课程设计09级
计算机09级
《数据结构课程设计》任务书
课程设计的性质和目的
数据结构课程设计是计算机专业的专业课程,通过课程设计使学生进一步巩固课堂所学知识,全面熟悉、掌握数据结构的基本设计方法和技巧,进一步提高分析问题、解决问题及上机操作能力,为将来从事计算机工作打下一定的专业基础。
设计课题
课题一:迷宫问题
详细内容见后
课题二:马踏遍棋盘问题
详细内容见后
课题三:表达式求值问题
详细内容见后
课题四:B+树的实现
详细内容见后
课程设计报告要求
课程设计报告每人一份,必须包含如下几个方面的内容:
基本设计思想;
主要数据结构;
主要实施流程;
所有源代码;
课程设计总结与体会。
分组及选题办法
一人一组。
若选择课题四,则只需完成一题即可;否则,必须至少完成前三个课题中的任意两个。
成绩考核按个人课题完成情况、设计报告质量及对课程设计的态度等综合评定。
五、设计进度安排
讲课及上机调试时间安排:
各班具体时间另行安排
其余时间:查阅资料,确定方案,设计课题相关程序。
分组答辩,交课程设计报告。
设计课题一:迷宫问题
一、问题描述:
以一个M*N的长方阵表示迷宫,0和1分别表示迷宫中的可通的方块和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通道,或得出没有通道的结论。
二、基本要求:
用计算机模拟“迷宫问题”,求出其中一条通道。用数组MAZE[1..M][1..N]表示迷宫,有的可以通行(0表示),有的是路障(1表示),MAZE[1][1]为迷宫入口,MAZE[M][N]为迷宫出口,用非递归算法求出一条通路并用“■”标示所输出的路径(见运行示例)否则说明没有通路,继续生成迷宫,直到有通路。
三、测试数据及运行示例:
下面是利用一随机函数生成的0/1方阵及运行示例:
四、算法提示:
实现这一算法的具体方法很多(如堆栈,队列等),但基本思想一般是回溯法使用MAZE[M][N]表示迷宫(如图2),为判定过程中是否越界,在其外围加一圈1作为路障,mark[M][N]作为标志数组,move[8][2]是行列增量数组(见图1-2);建堆栈.约定(i,j)表示i行j列,direction 表示方向, 从入口开始探索路径:沿0-7八个方向依次试探,若某方向可通(为0),则该点连同方向入堆栈,从该点继续试探;若八个方向都不通,则取出堆栈顶点,从其标记的方向开始试探其余方向;直至找到出口(有通路)或堆栈为空(没有通路)。
设计课题二:马踏遍棋盘问题
一、问题提出
设计一个国际象棋的马踏遍棋盘的演示程序
二、基本要求
将马随机放在国际象标的8*8棋盘Board[8][8]某个方格中,马按走棋规则进行移动。要求每个方格只进入一次,走遍棋盘上全部64个方格。编制非递归程序,求出马的行走路线,并按求出的行走路线,将数字1、2、……、64依次真入一个8*8的方阵,输出之。
三、测试数据
由自己批定。可自行指定一个马的初始位置(i,j),0≤i,j≤7。
四、实现提示
下图显示了马位于方格(2,3)时,8个可能的移动位置。
一般来说,当马位于位置(i,j)时,可以走到下列8个位置之一
0 1 2 3 4 5 6 7 0 8 1 1 7 2 2 H 3 7 3 4 5 4 5 6 7
(i-2,j+1)、(i-1,j+2)…,7。
每次在多个可走位置中选择其中一个进行试探,其余未曾试探过的可走位置必须用适当结构妥善管理,以备试探失败时的“回溯”(悔棋)使用。
设计课题三:表达式求值问题
一、问题提出
在高级语言程序中出现的数学表达式要进行求值运算,本课程设计要求模拟编译程序的求值过程,利用栈这种数据结构,对包含四则算术运算及多重括号及常量的表达式进行求值运算。
二、设计要求
1.一次性输入一个表达式,包含数值常量、四则算术运算符、括号等。
2.能输出表达式的正确结果。
输入输出界面清晰明了。
三、设计提示
1.可用两个栈(操作数栈和运算符栈)来存储运算过程中的原始数据及中间结果。
2.运算过程中要将输入的数字型字符转化为数值。
3. 可以利用一个函数返回运算符之间的优先关系;也可将一个运算符放入一个一维数组,并根据运算符在该数组中的位置建立一个二维数组,存放运算符之间的优先关系。
设计课题四:B+树的实现
一、问题提出
B+树一般用于建立数据表索引,综合效率非常高,像 Berkerly DB , sqlite , mysql 数据库都使用了B+树
您可能关注的文档
最近下载
- 样板间施工方案(全).pdf VIP
- 湖南省小型农田水利工程标准化设计图集山塘工程分册 (无水印).pdf VIP
- DBJ50_T-492-2024 城镇排水管渠污泥处理处置技术标准.docx VIP
- 新教材青岛版三年级下册科学6.把它们分离教学课件.pptx VIP
- 潍柴_国六_后处理_DPF系统介绍_结构布局.pdf VIP
- 2025年中国专业显卡市场调查研究报告.docx
- IBM_SiView_Introduction.ppt
- 标准图集-湖南省农村小型水利工程典型设计图集-雨水集蓄利用工程分册.pdf VIP
- 2024《美的集团跨国并购库卡集团的动因分析综述》3100字.docx VIP
- 江苏省盐城市东台市部分学校2024-2025学年高一下学期期中考试地理试题(原卷版+解析版).docx VIP
文档评论(0)