- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
存储结构:
首先用二维指针存储迷宫数据,迷宫数据由用户输入。
一个以链表作存储结构的栈类型,然后编写一个求解迷宫的递归或非递归程序。求
得的通路以三元组(i,j,d)形式输出,其中:(i,j)指示迷宫中的一个坐标,d表
示走到下一坐标的方向(东、南、西、北四个方向所用代表数字,自行定义)。
1.从入口出发,顺着某一个方向进行探索,若能走通,则继续往前进;否则沿着原
路退回,换一个方向继续探索,直至出口位置,求得一条通路。假如所有可能的通路都
探索到而未能到达出口,则所设定的迷宫没有通路。
迷宫的入口点的下标为(1,1),出口点的下标为(m,n)。为处理方便起见,可
在迷宫的四周加一圈障碍。对于迷宫的任一位置,均可约定有东、南、西、北四个方向
可通。经过的位置把0变为-1,带输出迷宫路径后在恢复迷宫院士为止
2.本程序有三个模块:
⑴主程序模块
⑵三个类模块即其对象:实现栈链表抽象数据类型;
⑶迷宫二维指针单元模块:存储迷宫,,寻路径,输出迷宫,恢复迷宫。
(二)流程图
1
存取迷宫GetMaze(int
m,intn)
输入迷宫的长和宽
内容
数组move用于更改
方向,函数Push,
PrintPath,Restore
调用求取一条路径
MazePath()
if(p.GetPop().x==q.Ge
tPop().xp.GetPo
p().y==q.GetPop().y
函数GetPop,Push,
Pop
迷宫无路经
显示结果
调用
Printpath()
恢复迷宫
Restore()
END
2
四.详细设计
(一).基本算法:
首先用二维指针存储迷宫数据,迷宫数据由用户输入。
一个以链表作存储结构的栈类型,然后编写一个求解迷宫的递归或非递归程序。求
得的通路以三元组(i,j,d)形式输出,其中:(i,j)指示迷宫中的一个坐标,d表
示走到下一坐标的方向(东、南、西、北四个方向所用代表数字,自行定义)。
迷宫的过程可以模拟为一个有哪些信誉好的足球投注网站的过程:每到一处,总让它按东、南、西、北4个方向
顺序试探下一个位置;如果某方向可以通过,并且不曾到达,则前进一步,在新位置上
继续进行有哪些信誉好的足球投注网站;如果4方向都走不通或曾经到达过,则退回一步,在原来的位置上继续
试探下一位置。
每前进或后退一步,都要进行判断:若前进到了出口处,则说明找到了一条通路;
若退回到了入口处,则说明不存在通路。
用一个二维指针数组迷宫表示迷宫,数组中每个元素取值“0”(表示通路)或“1”
(表示墙壁)。迷宫的入口点在位置(1,1)处,出口点在位置(m,n)处。设计一个模
拟走迷宫的算法,为其寻找一条从入口点到出口点的通路。
二维数组的第0行、第m+1行、第0列、第m+1列元素全置成“1”,表示迷宫的
外墙;第1行第1列元素和第m行第m列元素置成“0
文档评论(0)