[毕业设计 论文 精品]数据结构课程设计漫步迷宫(论文).doc
《[毕业设计 论文 精品]数据结构课程设计漫步迷宫(论文).doc》由会员分享,可在线阅读,更多相关《[毕业设计 论文 精品]数据结构课程设计漫步迷宫(论文).doc(16页珍藏版)》请在三一办公上搜索。
1、课 程 设 计 报 告学生姓名:学 号:学 院:理学院班 级:题 目:漫步迷宫指导教师: 职称: 2010 年 6 月 9 日目 录一、选题背景- 1 -1.1解决的主要问题和达到的技术要求- 1 -1.2 指导思想- 1 -二、算法设计- 2 -2.1 设计原理及方案选择- 2 -2.2 选择这个设计方案的缘由- 2 -2.2.1 方案的特点- 2 -三、程序及功能说明- 3 -3.1 程序及功能说明- 3 -四、结果分析- 4 -4.1、结果分析 - 4 -五、总 结- 5 -六、课程设计心得体会- 6 -参考文献- 7 -一、选题背景1.1 解决的主要问题和达到的技术要求主要可以解决数学
2、建模中两地有多条通路,怎么选择一条路,使这条路的里程最短,或者根本没有路。首先从文件中读入迷宫矩阵,在这儿设计到文件数据的读写。接着要从出口和入口选择出最短的路径。从初始点开始出发,开始想四周“探测”,如果能够到达,那么把这个位置存入到一个设定的数据栈中,然后以到达的位置开始,重新探测,如此循环下去。如果最后能够到达出口位置,那么输出走出的轨迹,否则,不能够到达。迷宫的规格(即行数与列数),状态设置(即各方格能否通行的状态),以及入口和出口的位置,均可以由输入随机确定。求得的最短路径,可以以从入口到出口的路径上的各个方格的坐标的线性序列输出。当无通路时,可以报告无路径的信息。采用结构化程序设计
3、方法,对各个模块的功能及参数作必要的说明。1.2 指导思想 随机生成一个矩阵,这个矩阵根据实际情况输入一个文件中,然后把该文件导入程序中,可以随意的选着出口和入口,通过搜索,把出口和入口之间的所有路径选择出来,通过比较选择出最短的路径。最后显示出具体的矩阵位置。二、算法设计2.1 设计原理及方案选择首先选择出所有的路径,然后从中挑选出,最短的路径。先从出口和入口选择出所有的路径,然后从选择出的所有路径中选着出最短的路径。这个过程中可以分出口和入口的先后选择,一共有两种选择。按照现实生活中的习惯,例如我们出门旅游,我们一般都先定下最终的目的地,再选择路径。所以我们在设计过程中,先定下出口,再定下
4、入口,这样就符合生活中的逻辑。使得方案更加符合实际。2.2 选择这个设计方案的缘由让自己做的方案更加符合实际、符合我们日常生活中的逻辑习惯。这样设计的软件才更加有应用价值。2.2.1 方案的特点1、思路清晰,先找出所有的路经,再选择出最短的路径。2、符合我们的日常生活逻辑习惯。3、可以解决一般的数学习题中最短路问题,直接当做软件包使用。三、程序及功能说明3.1 程序及功能说明1、确定出口的位置,也就是我们生活中的目的地。/*-输入进口的坐标-*/void enter() int a,b; printf(Please input the enter import postion:); scanf
5、(%d%d,&a,&b); *m=a; *n=b;2、 找到从入口到出口的所有通路。/*-输出一条通路-*/void footprint(int seat) int i; i=seat; while(i!=0) printf(%d,%d) ,mazepathi-x,mazepathi-y); i=mazepathi-pre; 3、 通过比较选择出最短的路径/*-寻找一条最短的通路-*/void pass() int zx5,zy5; int i,j,x,y,z,front=1,rear=1,find=0; printf(Please input the exit postion :); sca
6、nf(%d%d,&mazepath1-x,&mazepath1-y); /*mazepath1-x和mazepath1-y为迷宫的出口*/ zx1=0; zx2=1; zx3=0; zx4=-1; zy1=1; zy2=0; zy3=-1; zy4=0; enter(); while(frontx; y=mazepathfront-y; for(z=1;z0&i0&ix=i; mazepathrear-y=j; mazepathrear-pre=front; mazeij=-1; if(i=*m & j=*n) footprint(rear); find=1; front+; if(!find
7、) printf(no find any way!);数据流程图打开指定文件,读取数据到矩阵输出矩阵输入起始位置和终点位置创建一个栈检验右、下、左、上,找出能到达的位置越界,或不能到达出点输出栈中存储的通路输出不可到达信息结束开始需找路径的流程图是否确定进出口位置调用maze()(定义一组数上下左右移动依次检验右,下,上,左,是否可到达越界,到达出点?下一个位置可到达则入栈到达出点调用footprint(),输出路径否输出信息结束四、结果分析4.1、结果分析图4-1是一个5*6的比较小的矩阵,有两条通路经过,经过比较有确定了最小的路径。最后显示出来,确实有可行性。图4-1图4-2是一个6*10
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 精品 毕业设计 论文 精品数据结构课程设计漫步迷宫论文 毕业设计 精品 数据结构 课程设计 漫步 迷宫
链接地址:https://www.31ppt.com/p-2396536.html