迷宫问题 任务:可以输入一个任意大小的迷宫数据,用非递归的方法求出一条走出迷宫的路径,并将路径输出; 要求: 在上交资料中请写明:存储结构、基本算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法; [问题描述] 走迷宫是实验心理学中一个古典问题。用计算机解迷宫路径的程序,就是仿照人走迷宫而设计的,也是对盲人走路的一个机械模仿。 [实现提示] 假设迷宫是一个矩形,我们把它分成许多小方格,在每个小方格上或者已筑成墙或者没有,这就成为一个迷宫。走迷宫就是从一个小方格沿前后左右四个方向到邻近的方格,当然不能穿墙。设迷宫的入口是在西北角那个方格,而出口是东南角那个方格。在计算机中,迷宫可用一个矩阵表示。若某小方格是墙,则相应数组变量标为 0,否则为字符1,表示可走的路。现在要编写一个程序,寻找一条从入口到出口的路线。我们可提出如下一般性问题寻找:一条从任何给定的方格到出口的路线。基本思想是: 在当前位置上向四个(或八个)方位探测前进方位,向探测到的通路方位前进一步,如此循环,直到迷宫的“出口”,或判断后宣布这是一个不存在通路的死迷宫。
上传时间: 2013-12-31
上传用户:wfl_yy
实现数据结构中的二分法算法,二分检索的程序,对输入的一组顺序数可以查找所需的记录。
上传时间: 2014-01-26
上传用户:13188549192
C语言精彩百例第45-70例 第二篇 深入提高篇 实例45 结构体变量 实例46 结构体数组 实例47 结构体指针变量 实例48 结构体指针数组 实例49 共用体变量 实例50 枚举类型 实例51 读写字符 实例52 读写字符串 实例53 格式化输出函数 实例54 格式化输入函数 实例55 打开和关闭文件 实例56 fputc()和fgetc() 实例57 函数rewind() 实例58 fread()和fwrite() 实例59 fprintf()和fscanf() 实例60 随机存取 实例61 错误处理 实例62 综合实例 实例63 动态分配函数 实例64 常用时间函数 实例65 转换函数 实例66 查找函数 实例67 跳转函数 实例68 排序函数 实例69 伪随机数生成 实例70 可变数目变元
上传时间: 2014-01-17
上传用户:wys0120
麻将胡牌算法的实现。不考虑七小队,以及牌数。
上传时间: 2013-12-24
上传用户:虫虫虫虫虫虫
对任意给定的网络(顶点数和边数自定),建立它的邻接矩阵并输出,然后利用Prim算法或Kruskal算法生成它的最小生成树,并输出结果。
标签: 网络
上传时间: 2014-01-12
上传用户:jichenxi0730
最大邻接点存储的单元最短路径算法,在一个网络中,各结点的邻接接点的最大值称为该网络的最大邻接结点数。取网络的最大邻接结点数作为矩阵的列,网络的结点总数作为矩阵的行,构造邻接结点矩阵M-PJ来描述网络结构,邻接结点矩阵的行按结点号从小到大顺序排列,与结点I邻接的结点号写在矩阵的第I行,如果结点I的邻接点数小于最大邻接点数,则以0填充,直到填满为止。对照邻接结点矩阵,把邻接结点矩阵中各元素邻接关系对应边的权值填在同一位置上,构造相应的初始判断矩阵M-PDJ。根据邻接结点矩阵和初始判断矩阵,就可以求网络中任意两点间的最短路径。
上传时间: 2014-01-13
上传用户:siguazgb
练习堆排序算法,将存放于数组中的一系列数通过堆将其排好序。
标签: 排序算法
上传时间: 2013-12-19
上传用户:zhangyigenius
用C++实现的AC字符串匹配算法,自动机采用二维数组存储,可以对中英文进行匹配
上传时间: 2013-12-21
上传用户:123456wh
粒子滤波算法受到许多领域的研究人员的重视,该算法的主要思想是使用一个带有权值的粒子集合来表示系统的后验概率密度。在扩展卡尔曼滤波和Unscented卡尔曼滤波算法的基础上,本文提出一种新型粒子滤波算法。首先用Unscented卡尔曼滤波器产生系统的状态估计,然后用扩展卡尔曼滤波器重复这一过程并产生系统在k时刻的最终状态估计。在实验中,针对非线性程度不同的两种系统,分别采用五种粒子滤波算法进行实验。结果证明,本文所提出算法的各方面性能都明显优于其他四种粒子滤波算法。
上传时间: 2013-12-24
上传用户:hzy5825468
编写一进程调度程序模拟程序(调度算法可以采用下面提示中的算法,也可以采用教材中的某个标准调度算法),进程状态为就绪、运行、阻塞三种。模拟程序只对你所设置的“虚拟PCB”进行相应的调度模拟操作,即每发生“调度”时,显示出当前运行的“PCB名字”、优先数、运行时间等,而不需要对系统中真正的PCB等数据进行修改。
上传时间: 2013-12-17
上传用户:彭玖华