using namespace std; int a[100][100]; bool c[100]; void BFS(int n,int v) { int i,j,k; queue<int>p; printf("%d ",v); p.push(v); c[v]=true; while(!p.empty()) { k=p.front(); for(i=1;i<=n;i++) { if(a[k][i]&&!c[i]) { printf("%d ",i); p.push(i...
代码: 1#include<cstdio>2#include<cstring>3#include<queue>4#include<algorithm>5usingnamespacestd;67structnode{8intx,y,s;9booloperator< (constnode &a)const{10returna.s<s;};11};12boolbk[210][210];13charmap[210][210];14voidbfs(intsx,intsy);15intn,m,ex,ey;1617intmain()18{19//f...
usingnamespacestd; /* DFS */ structNode{ intpos; Node*left,*right; Node(intpos){ this->pos=pos; this->left=NULL; this->right=NULL; } }; constintN=1000; //1. 图的构建第一步 vector<int>m[N],v; voidBFS(Node*map){ queue<Node*>q; q.push(map); while(!q.empty()){ Node...
queue<location*> Q;//建立关于location指针的队列location* begin =newlocation();//【重要】这里需要new一个空间来放置新数据begin->x =1; begin->y =1; begin->father =NULL;//初始化起点,其父节点为空,要放在函数内创建队列【重要】Q.push(begin);//放入队列的第一个点while( !Q.empty() )//这...
/*The BFS function using the approach given in the CLRS book*/ void BFS_CLRS(vector <int> G[], int source, int n) { /*Initializing vectors and queue*/ vector<string> colour(n, "white"); vector<int> distance(n, 1000000);
intn;chars[maxn];voidsolve(){scanf("%d",&n);scanf("%s",s);printf("%c\n",max(s[0],s[n-1]));} E.魔法之森的蘑菇(bfs) 在这里插入图片描述 加了方向的bfs,可以用层次遍历,来记录步数。 constintmaxn=1010;intn,m;// int a[maxn];chars[maxn][maxn];intx,y;intdx[]={-1,0...
#include<iostream>#include<cstdio>#include<cstring>#include#include<queue>using namespace std;map<pair<int,int>,int>MAP;// 存地图pair<int,int>Now,Next;int dir[8][2]={1,0,0,1,-1,0,0,-1,1,1,-1,-1,-1,1,1,-1};int S_x,S_y,E_x,E_y,n;intbfs(){queue<pair<int,int...
step; } }; int bfs() { memset(vis, 0, sizeof(vis)); priority_queue<node> q; node s, e; s.x = sx; s.y = sy; s.step = 0; q.push(s); while (!q.empty()) { s = q.top(); q.pop(); if (c[s.x][s.y] == 'r') return s.step; for (int i = 0; i < ...
#include<iostream>#include<string.h>#include<stdlib.h>#include<algorithm>#include<math.h>#include<stdio.h>#include<queue>#include#include<string>using namespace std;struct Node{int a[3][3];int x,y;int state,id;Node(){};Node(int a[3][3],int x,int y,int state,int id){this->id...
usingnamespacestd; intmap[M][M], d[M], ans[M]; intn, m; boolvis[M]; voidspfa(intu){ for(inti =1; i <= n; ++ i){ d[i] = INF; vis[i] =0; } vis[u] =1; d[u] =0; queue<int> q; q.push(u); while(!q.empty()){ inttemp = q.front(); q.pop(); vis[...