深度优先搜索与广度优先搜索———模板
/*无向图*/#include<cstring> #include<iostream> #include<cstdio> #include<algorithm> using namespace std; bool f[100],a[100][100]; int n,m,x,y; void bfs(int t) { int k,closed,open,p[100]={0}; cout<<t<<" "; open=0; closed=1; f[t]=1; p[1]=t; while (open<closed) { open++; k=p[open]; for (int i=1;i<=n;i++) if (f[i]==0 && a[k][i]) { cout<<i<<" "; f[i]=1; closed++; p[closed]=i; } } } void dfs(int t) { cout<<t<<" "; f[t]=1; for (int i=1;i<=n;i++) if (f[i]==0 && a[t][i]==1) dfs(i); } int main() { cin>>n; cin>>m; memset(f,0,sizeof(f)); memset(a,0,sizeof(a)); for (int i=1;i<=m;i++) { cin>>x>>y; a[x][y]=1; a[y][x]=1; } dfs(1); cout<<endl; memset(f,0,sizeof(f)); bfs(1); return 0; }
转载于:https://www.cnblogs.com/xiaoqi7/p/5308460.html
深度优先搜索与广度优先搜索———模板相关推荐
- 学会二叉树不知道干啥?二叉树的深度优先搜索和广度优先搜索,我要打十个乃至二十个(打开你的LeetCode撸起来)学练并举
目录 一. 图解二叉树的深度优先搜索 二. 二叉树的广度优先搜索 (层序遍历) 三. 打开LeetCode 撸起来 至此, 咱多少被刚刚的后序非递归搞得可能有点小晕晕的, 没事,层序简单呀.... ...
- 八数码深度优先搜索_深度优先搜索和广度优先搜索
深度优先搜索和广度优先搜索 关于搜索&遍历 对于搜索来说,我们绝大多数情况下处理的都是叫 "所谓的暴力搜索" ,或者是说比较简单朴素的搜索,也就是说你在搜索的时候没有任何所 ...
- 算法十——深度优先搜索和广度优先搜索
文章出处:极客时间<数据结构和算法之美>-作者:王争.该系列文章是本人的学习笔记. 搜索算法 算法是作用于数据结构之上的.深度优先搜索.广度优先搜索是作用于图这种数据结构之上的.图上的搜索 ...
- 深度优先遍历和广度优先遍历_图与深度优先搜索和广度优先搜索
什么是图? 图是一种复杂的非线性表结构.由若干给定的点一级任意两点间的连线所构成.图通常用来描述事物之间的特定关系, 代表的就是事物, 线就是事物之间所具有的关系.例如社交网络就是一种典型的图关系, ...
- 深度优先搜索和广度优先搜索
深度优先搜索和广度优先搜索 在人工智能的运筹学的领域中求解与图相关的应用中,这两个算法被证明是非常有用的,而且,如需高效地研究图的基本性质,例如图的连通性以及图是否存在环,这些算法也是必不可少的. ...
- 数据结构学习笔记——图的遍历算法(深度优先搜索和广度优先搜索)
目录 一.图的遍历概念 二.深度优先搜索(DFS) (一)DFS算法步骤 1.邻接表DFS算法步骤 2.邻接矩阵DFS算法步骤 (二)深度优先生成树.森林 (三)DFS的空间复杂度和时间复杂度 三.广 ...
- 迷宫问题:深度优先搜索和广度优先搜索
迷宫问题:深度优先搜索和广度优先搜索 1.深度优先搜索可以使用栈实现,栈顶元素为当前节点 2.当前节点搜索下一节点,判断节点是否走得通,如果走得通任意方向走一步,走不通一直弹出栈内元素,直到走得通 3 ...
- 深度优先搜索与广度优先搜索区别和案例
今天周末,心血来潮打开LeetCode做一道题: https://leetcode-cn.com/problems/number-of-enclaves/ 看到题,我的第一想法是: 从边缘的陆地开始, ...
- 根据邻接表求深度优先搜索和广度优先搜索_深度优先搜索/广度优先搜索与java的实现...
度:某个顶点的度就是依附于该顶点的边的个数 子图:一幅图中所有边(包含依附边的顶点)的子集 路径:是由边顺序连接的一系列定点组成 环:至少含有一条边且终点和起点相同的路径 连通图:如果图中任一个到另一 ...
- 深度优先搜索和广度优先搜索的比较与分析
一)深度优先搜索的特点是: (1)无论问题的内容和性质以及求解要求如何不同,它们的程序结构都是相同的,即都是深度优先算法(一)和深度优先算法(二)中描述的算法结构,不相同的仅仅是存储结点数据结构和产生 ...
最新文章
- java有模糊查询吗,到底Java里的模糊查询语句该怎么写
- 360压缩电脑版_360压缩国际版
- 【NOIP2015模拟10.22】矩形
- pytorch之torch.backends.cudnn.benchmark=True——使用 GPU 来加速网络的训练
- 如何了解自己的认知偏差_了解吸引力偏差
- (android 实战总结)android第三方组件实现总结
- 搜索引擎如何评估外贸网站内容?
- Hyper-V Server 虚拟光纤通道
- Git:查看所有远程分支以及同步远程代码
- Algs4-1.1.6下面这段程序会打印出什么
- cudnn下载与安装
- 批处理FOR命令详解
- Arduino 串行通信之串口通信 UART 原理及释义
- [转载]基于Servlet的Google Earth之旅
- 阿里云服务器配置如何选择
- 移动端 H5 概念术语(一)
- 【Unity3D】基于AssetBundle实现资源热更新
- 烤仔说 | Babe Babe Běibèi oh~
- 格林纳达常驻WTO大使孙宇晨会见法国驻联合国日内瓦办事处代表
- 无线通信模块定点传输-点对多点的具体传输应用