初级BFS
输入:n个顶点,m条边。
接下来输入每一条边的两个顶点。
输出遍历的顺序
#include<iostream> #include<queue> bool book[100];//bool mark[100]; int t[500][500];//int ljjz[500][500]; using namespace std; int n,m; int main() { int x,y; int u; cin>>n>>m; for(int i=0;i<m;i++){ cin>>x>>y; t[x][y]=t[y][x]=1; } queue<int>q; q.push(1);//将一号顶点压入队列 book[1]=true;//标记一号顶点已被访问 cout<<1<<endl;//输出访问的顶点 while(!q.empty()){//当队列不为空进行循环 u=q.front();//u是队首元素 for(int i=1;i<=n;i++){//遍历每一个顶点 if(!book[i]&&t[u][i]){//如果该顶点与当前顶点u之间有边且未被访问过 cout<<i<<endl;//输出访问到的顶点 book[i]=1;//标记它已经被访问过了 q.push(i);//将此点推入队列 } } q.pop();//顶点u出队 } }
如需转载,请注明出处
如有侵权,联系删除
2290713181@qq.com
如有侵权,联系删除
2290713181@qq.com
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用