• 大小: 1.64KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-02-01
  • 标签: 队列  数据结构  

资源简介

利用队列找迷宫的最优解,

入口是(1,1),出口是(M,N)

int mg[M 2][N 2]=

 {1,1,1,1,1,1,1,1,1,1},
 {1,0,0,1,0,0,0,1,0,1},
 {1,0,0,1,0,0,0,1,0,1},
 {1,0,0,0,0,1,1,0,0,1},
 {1,0,1,1,1,0,0,0,0,1},
 {1,0,0,0,1,0,0,0,0,1},
 {1,0,1,0,0,0,1,0,0,1},
 {1,0,1,1,1,0,1,1,0,1},
 {1,1,0,0,0,0,0,0,0,1},
 {1,1,1,1,1,1,1,1,1,1}
};


资源截图

代码片段和文件信息

#include
#define MaxSize 50 
#define M 8
#define N 8
typedef struct
{   int ij;    //方块的位置(ij)         
    int pre;    //本路径中上一方块在队列中的下标   
}SqQueue; 
SqQueue Qu[MaxSize];
int front=0rear=0; 
int mg[M+2][N+2]=
{
    {1111111111}
    {1001000101}
    {1001000101}
    {1000011001}
    {1011100001}
    {1000100001}
    {1010001001}
    {1011101101}
    {1100000001}
    {1111111111}
};
void print(SqQueue Qu[]int front)
{   int k=0;
    for(int i=front;i>0;i=Qu[i].pre)
    {
        printf(“(%d%d) “Qu[i].iQu[i].j);
        k++;
        if(k%5==0)
           printf(“\n“);
    }
}
bool mgpath1(int xiint yiint xeint ye)
{   int i j di i1 j1;
    rear++;
    Qu[rear]

评论

共有 条评论