📄 搜索算法.h
字号:
#include "常数定义.h"
#define MAXINT 8192
#define STACKSIZE 40000
#define tile_num(x,y) ((y)*map_w+(x))
#define tile_x(n) ((n)%map_w)
#define tile_y(n) ((n)/map_w)
typedef struct node *TREE;
struct node
{int h; int tile; TREE father;};
typedef struct node2 *LINK;
struct node2
{ TREE node; int f; LINK next;};
class findpt
{public: findpt();
virtual~findpt();
public:
int path[MAXINT];
char map[WIDTH*SCRP/GX+2][HEIGHT*SCRP/GY+2];
short int dis_map[WIDTH*SCRP/GX+2][HEIGHT*SCRP/GY+2];
int map_w,map_h;
int start_x,start_y,end_x,end_y;
int findpath();
private:
LINK queue;
TREE stack[STACKSIZE];
int stacktop;
void init_queue();
void enter_queue(TREE node,int f);
TREE get_from_queue();
void freetree();
int judge(int x,int y);
int trytile(int x,int y,TREE father);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -