用C语言求解迷宫问题

用C语言求解迷宫问题

#include 
#include 
#define c 6 //宽 
#define d 8 //长 
int e;//初始x坐标 
int f;//初始y坐标 
int g;//终点x坐标 
int h;//终点y坐标 
 char mizu[c][d];
int flag[d][c] = {0} ;      
typedef int TypeData ;
typedef struct node{
 TypeData datax ;//x
 TypeData datay ;//y
 struct node* next ;
}Node , *LinkList ; 
 
typedef struct stack{
 LinkList top ;
}STACK ;
//************************函数声明******************************
int stackInit(STACK* s ) ;
int pushStack(STACK* s ,TypeData x , TypeData y) ;//压栈 
void popStack(STACK* s , TypeData* x , TypeData* y) ;//出栈 
int isStackEmpty(STACK* s) ;
int mizePath(STACK* s ,TypeData end_x , TypeData end_y ) ;
int passMizu(TypeData x , TypeData y ) ;
//********************************************************** 
 
//链栈的初始化 
int stackInit(STACK* s )
{
 LinkList p = (LinkList)malloc(sizeof(Node)) ;
 if(!p)   return -1 ;
 p->next = NULL ;
 p->datax = -1 ;  
 p->datay = -1 ;
 s->top = p ;
 return 1 ;
}
//入栈操作

你可能感兴趣的:(数据结构)