
图
qq_37357873
这个作者很懒,什么都没留下…
展开
-
迪杰斯特拉--用了STL
N个点,T条双向边,输入: 点u编号 点v编号 距离 定义带权图 //定义边 struct edge { int to,dist; }; vector< edge > G[maxn];//每个G[i]存放的是定点编号为i的点相邻的边 添加边 void add_edge(int u,int v,int dist) { edge e; e.to=v...原创 2018-09-09 19:12:44 · 247 阅读 · 0 评论 -
kruscal(用到并查集)
#include<iostream> #include<vector> #include<cstdlib> #include<cstdio> #include<algorithm> using namespace std; #define maxn 850 //最小生成树 //定义边的结构原创 2018-09-11 15:31:21 · 122 阅读 · 0 评论 -
DFS/BFS-整理
DFS问题的类型 一般看到连通块就是用DFS,不同的是需要用连通块的什么信息 如果问有多少个连通块?<=> 调用几次DFS,一般就是主函数里的dfs函数被调用的次数,在这个情况下,就需要对每个点属于哪个连通分量进行记录(用二维数组) 如果问一个连通块有多少块?<=> 做完一遍DFS有多少点被标记,可以做完一次DFS就可以知道,在DFS函数中,对访问过的点标记(用二维数...原创 2018-09-11 20:50:44 · 388 阅读 · 1 评论