求迷宫中从入口到出口的路径的算法及实现.pdf

求迷宫中从入口到出口的路径的算法及实现.pdf

ID:56699569

大小:71.37 KB

页数:2页

时间:2020-07-05

求迷宫中从入口到出口的路径的算法及实现.pdf_第1页
求迷宫中从入口到出口的路径的算法及实现.pdf_第2页
资源描述:

《求迷宫中从入口到出口的路径的算法及实现.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基础及前沿研究中国科技信息2008年第23期CHINASCIENCEANDTECHNOLOGYINFORMATIONDec.2008for(i=-1;i<=1;++i)//在当前点的8各求迷宫中从入口到出口的方向进行探测for(j=-1;j<=1;++j){ih=i0+i;路径的算法及实现jh=j0+j;if((i!=0

2、

3、j!=0)&&ih>=0&&ih=0&&jh

4、了迷宫算法的设计,并在算法输出函数(stdio.h);过程调用函数tab[ih][jh]=1;的基础上用C语言实现了求迷宫中从入口到(process.h);动态存储分配函数(malloc.search(row,col,tab,ih,jh,ir+1,ie1,出口的路径,最后进行了调试和数据测试。h)。ie2,no);关键字2.本程序的设计过程分三大块:主程tab[ih][jh]=0;序(main());试探函数(search());数据子迷宫算法;程序实现;调试}文件(input.c)。主要过程就是:通过主程Abstract}序调用数据文件,然后用一维数组来模拟Thisarticlegavet

5、hedesignofmazealgorithmfirstly,and}二维数组进行动态存储,再从第一个入口basedonthealgorithm,italsogotasolutionoftheentrance开始,调用试探函数探测通路,把探测到的tothepathofexportswithClanguage,finally,itdebugedmain()通路入栈,进入下一层调用。直到找出所有andtestedwithdata.{的通路,最后打印输出。keywordsFILE*fp;MazeAlgorithm;ProgrammingAchieve;Debug三详细设计程序introw,col,

6、*tab1,**tab2,*ie1,*ie2,#includeir,no,i0,j0,i,j;#include迷宫问题的求解方法很多,如递归算#includeif((fp=fopen("input.c","r"))法、遗传算法、回溯算法等,这些经典算法voidsearch(introw,intcol,int**==NULL)//打开数据文件的缺点是实现过程比较繁杂。本文介绍的tab,inti0,intj0,intir,int*ie1,int*ie2,{是一种基于八方向跟踪算法,希望能为迷int*no)//试探函数printf("Th

7、eopenError!");exit(0);宫算法研究提供另一种参考思路。{}inti,jh,ih,j,count;fscanf(fp,"%d%d",&row,&col);//一迷宫算法if(i0==row-1&&j0==col-1)//若读入迷宫的矩阵行和列大小1.以二为数组表示迷宫,数组中以元能到达出口素值为0表示通路,1表示障碍,迷宫的大{tab1=(int*)malloc((unsigned)小由用户自己设定,但限定迷宫的大小不++(*no);//方法数col*row*sizeof(int));//申请动态存储区超过10。加1tab2=(int**)malloc((unsigned)

8、2.用户以文件的形式输入迷宫的数printf("#----------------row*sizeof(int*));//tab1一维数组来模拟据:文件中第一行的数据为迷宫的行数mThe~~~~[%d]th~~~~~Solution----------tab2二维和列数n;从第二行至第m+1行(每行n个----------#",*no);/数组数)为迷宫值,同一行中的两个数字之间用/打印该种路径的出现顺序ie1=(int*)malloc((unsigned)col*sizeof空白字符相隔。printf("(%d,%d)",1,1);//从入口开(int));3.若设定的迷宫存在通路,则

9、以长方始打印ie2=(int*)malloc((unsigned)col*sizeof阵形式将迷宫及其通路输出到标准输出文count=0;//输出换行计(int));件(及终端)上,若设定的迷宫不存在通路,数则报告相应信息。for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。