数据结构栈与队列迷宫问题_第1页
数据结构栈与队列迷宫问题_第2页
数据结构栈与队列迷宫问题_第3页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、在123000解题思:mazesizesize,对当前位置(某一时刻所在的位置).line,.line=0star0E、1S、2W、3N01位置,如果是则结束整个运算,否则,改变当前位置到他的东临位置(0); 位置W(i,j-N(i-在123000解题思:mazesizesize,对当前位置(某一时刻所在的位置).line,.line=0star0E、1S、2W、3N01位置,如果是则结束整个运算,否则,改变当前位置到他的东临位置(0); 位置W(i,j-N(i-(1)需求分。索,直到所有可能 的通路都探索到为止。即所谓的回溯法。时,通常用的是“穷举求解”“栈”假设“当前位置(1)需求分。索,

2、直到所有可能 的通路都探索到为止。即所谓的回溯法。时,通常用的是“穷举求解”“栈”假设“当前位置”指的是“一条路径的算法的基本 是:若当前位置可通,则纳入当前路径,并继续朝“下一“不可通”“当前路径”“一位置”指的是“当前位置”四周四个方向(a、输入的形式和输入值的范围:以 0,1 输入表示迷宫,0 为通路,1 01size(1=size=10)b、输出的形式:首先输出迷宫“#”表示墙壁,“0”表示通道,“1”表c、程序所能达到的功能:实现输出迷宫通道,当迷宫无通道时显示“找不到通路”(2)概要设1数据构的定(stack)有特殊含义,称为栈顶(top),相应的,表头端称为栈底(bottom)。

3、不含元素的S=(a1,a2,,an),a1为栈底元素,an后进先出的原则进行的。因此,栈又称为后进先出(List(简称LIFO 结构Out)的线性表ADT 数据对象:D=ai|aiElemSet,i=1,2,n, 数据关系:R1=|ai-S=(a1,a2,,an),a1为栈底元素,an后进先出的原则进行的。因此,栈又称为后进先出(List(简称LIFO 结构Out)的线性表ADT 数据对象:D=ai|aiElemSet,i=1,2,n, 数据关系:R1=|ai-an,a12程序模(1)迷宫和栈的定义typedef enum ERROR, OK typedef /row/linetypedef

4、Type typedef SElemType*base; SElemType * top;/在构造之前和销毁之后,base(2)构造一个空栈 Sus InitStack(SqStack S.base=(SElemType if(!S.base)returnERROR; return (3)进栈usPush(SqStack emType 元素eif (S.top-S.base=S.stacksize)If(!S.base) exit (overflow) S.stacksize+=STACKINCREMENT;Return OK;return (3)进栈usPush(SqStack emType

5、 元素eif (S.top-S.base=S.stacksize)If(!S.base) exit (overflow) S.stacksize+=STACKINCREMENT;Return OK;Sus Pop(SqStack emType SaOK,if(S.top=S.base)returnERROR; return (5)判栈空Sus StackEmpty(SqStack return ERROR;return (1)main()(3)pr (4)Next (5)InitStack()(6)pushpopmazepath输出路径函数pr(11)标记当前位置函数Markfoot()(12

6、)判断当前位置是否可通函数 (2)mazemazepath () (3MazePath():do while(栈不空在 此,尚需说明一点的是,所谓当前位置可通,指的是未曾走到过的通道块,即要求 (否则所求路径就不是简单路径),Sus MazePath (MazeType Typestart,(12)判断当前位置是否可通函数 (2)mazemazepath () (3MazePath():do while(栈不空在 此,尚需说明一点的是,所谓当前位置可通,指的是未曾走到过的通道块,即要求 (否则所求路径就不是简单路径),Sus MazePath (MazeType Typestart,PsoTy

7、peend)/若迷宫mazestartendTURE;if 迹) if else if(!StackEmpty(S) Pop (S,e);while (e.di=4& (e.seat); if (e.di4)Push if 迹) if else if(!StackEmpty(S) Pop (S,e);while (e.di=4& (e.seat); if (e.di4)Push while(!StackEmpty(S); return (FALSE);(4遇是如何解决的以及对设计与实现的(3)。 在 这个问题上由于输入数据的时候是输入一个 0 或 1,然后再输入一个空格,这样会比(4)”ran

8、d(void)用于产生一个伪随机整数就可以简单 实现。rand()%201(5)(3)。 在 这个问题上由于输入数据的时候是输入一个 0 或 1,然后再输入一个空格,这样会比(4)”rand(void)用于产生一个伪随机整数就可以简单 实现。rand()%201(5)1,1forsize,size,size则位置定位(1,1),出口位置定位(2,size-1),1(21改进设想:101101c、经验体这 小组成员第一次以团队合作的形式参与程序设计这样的实验由于数据结构门在 这次团队合作中,和商榷中,争执是不可避免的。成员们并没有因此动怒,而是耐和小的基础环境即操作系统环境的影响,此课程设计以Visual C+6.0 为依据,作为运行环VisualC+6.0在 这次团队合作中,和商榷中,争执是不可避免的。成员们并没有因此动怒,而是耐和小的基础环境即操作系统环境的影响,此课程设计以Visual C+6.0 为依据,作为运行环VisualC+6.0操作过程如下maze.exe,DOS110110,选 择创建方式 A:自 动生成 B:1。若输入Aa,若输入Bb,size*size,01Enter然 后用户

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论