Advertisement

迷宫问题(广度优先搜索算法BFS)

阅读量:

通过BFS算法寻找任意绘制迷宫中的路径(感觉路径存储方式还有优化空间,害(・∀・)!)

复制代码
    #include<iostream>
    #include<algorithm>
    #include<queue>
    #include<vector>
    using namespace std;
    int n, m;
    int begin_x, begin_y, end_x, end_y;
    int room[100][100];//最大为100*100的迷宫大小
    int dir[4][2] = { {0,1},{0,-1},{1,0},{-1,0} };//方向为上左下右
    struct node {
    int x, y;
    vector<node> path;//记录路径
    };
    inline bool CHECK(int x, int y) {//检查是否出界
    return (x < n && x >= 0 && y >= 0 && y < m);
    }
    vector<node> BFS(int begin_x, int begin_y, int end_x, int end_y) {
    node start, next;
    start.x = begin_x

全部评论 (0)

还没有任何评论哟~