文章
2
粉丝
126
获赞
1
访问
796
#include<bits/stdc++.h>
using namespace std;
const int N=100010;
int h[N],e[N],ne[N],indx,dist[N];
int visit[N];
int n,m; //根编号是m
void add(int a,int b){
e[indx]=b;
ne[indx]=h[a];
h[a]=indx;
indx++;
}
void bfs(int n,int m){ //顶点数,根节点编号
visit[m]=1;
queue<int>q;
q.push(m);
dist[m]=0; //初始距离为0
while(q.size()){
int t=q.front();
q.pop();
for(int i=h[t];i!=-1;i=ne[i]){
int j=e[i];//找到与t结点领接的下一个结点
if(visit[j]==0){ //未访问到
dist[j]=dist[t]+1;
&...
登录后发布评论
暂无评论,来抢沙发