#include
#include
#include
using namespace std;
#define n 8
stack s;
int * createMaze(){//初始化迷宫
int i,j;
int * a;
a=new int[n*n];
for(i=0;i<n;i++){
for(j=0;j<n;j++){
*(a+n*i+j)=-1;//不设置为0的...
分类:
其他好文 时间:
2014-05-13 11:40:53
阅读次数:
228
本段程序主要利用数据结构栈的先进后出特点,实现回溯求解迷宫路径问题。
#include
#include
using namespace std;
//坐标类
struct Point
{
int x;
int y;
};
//地图类
template
struct Map
{
int (*p)[A];
int row;//行数
int col;//列数
};
//start起始点, ...
分类:
其他好文 时间:
2014-05-13 05:25:02
阅读次数:
478
1.迷宫问题
对于走迷宫,人们提出过很多计算机上的解法。深度优先搜索、广度优先搜索是使用最广的方法。生活中,人们更愿意使用“紧贴墙壁,靠右行走”的简单规则。
下面的代码则采用了另一种不同的解法。它把走迷宫的过程比做“染色过程”。假设入口点被染为红色,它的颜色会“传染”给与它相邻的可走的单元。这个过程不断进行下去,如果最终出口点被染色,则迷宫有解。
package newExa...
分类:
编程语言 时间:
2014-05-12 14:50:44
阅读次数:
391
http://acm.hdu.edu.cn/showproblem.php?pid=1272 1
#include 2 #include 3 #include 4 #define maxn 50000 5 using namespace std; 6 7
int in[maxn...
分类:
其他好文 时间:
2014-05-09 08:36:38
阅读次数:
393
本文针对迷宫问题,探讨解决思路并给出实现代码。在本文中,采用的图的深度优先搜索和广度优先搜索两种方法分别对迷宫的路径进行了求解。
首先来看迷宫问题的描述,可以参考此处,简而言之就是,通过一个二维数组(int型)来表示迷宫,迷宫中0表示可行,1表示不可行。在本文的实现中,可以输入给定迷宫,定义迷宫入....
分类:
其他好文 时间:
2014-05-09 06:38:13
阅读次数:
608
经典迷宫问题。。。STL~queue+BFS实现,给正在学习使用queue和BFS的童鞋提供一个比较好理解的模板~=w=~...
分类:
其他好文 时间:
2014-05-09 06:05:13
阅读次数:
353
迷宫问题可以看做是在“图”中求解:已知的两个节点是否连通,以及求某个连通的通路。可以通过图的深度优先遍历求解。
import java.util.HashSet;
import java.util.Set;
class Pos{
public int i;
public int j;
public Pos(int i,int j){
this.i=i;
this.j=j;
}...
分类:
其他好文 时间:
2014-05-09 01:52:20
阅读次数:
312
#include
#include
using namespace std;
#define n 8
int * filler=new int[n*n];//记录填充位置
int initFiller(){//初始化填充记录器
int i,j;
for(i=0;i<n;i++){
for(j=0;j<n;j++){
*(filler+n*i+j)=0;
}
}
retur...
分类:
其他好文 时间:
2014-05-06 21:51:33
阅读次数:
323