![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论
文章平均质量分 62
Sylvia的三个月突击史
这个作者很懒,什么都没留下…
展开
-
并查集
数据结构——集合用来表示集合信息,用以实现如确定某个集合含有哪些元素、判断两个元素是否存在在同一集合中 、求集合中元素个数等问题。方法:用一棵树来表示一个集合,判断是否在一个集合中,只需判断是否在一棵树上。定义数组Tree[]来表示双亲结点编号,若该结点已经是根节点,则保存为-1#define N 1000int Tree[N];//初始化所有节点的树根为-1,即为独立节点,注意循环的开始和结束...原创 2018-03-14 08:24:40 · 141 阅读 · 0 评论 -
最小生成树MST
最小生成树Kruskal算法1.初始时所以点属于孤立的结点2.按照边权递增的顺序遍历所有的边,若该边的两个点不属于一个集合,则确定该边为最小生成树上的一条边,且要将这两个点合并到一个集合之中。3.遍历完所有边,若原图上所有结点均属于同一集合,则被选取的边和结点构成了最小生成树;否则不连通,MST不存在方法:并查集例一:九度1017 还是畅通工程题目描述: 某省调查乡村交通状况,得到的统计表中...原创 2018-03-14 08:41:10 · 307 阅读 · 0 评论 -
拓补排序
突然发现之前做图论的题的时候忘记发博客了。。。今天在做map的时候突然发现拓补序列的特征:若节点U经过若干条有向边后能够到达节点V,则在求得的序列中U必然排在V之前求拓补序列的方法:选择入度为0的节点,作为序列的第一个节点,当该节点被选为序列的第一个顶点之后,将该点从图中删去,同时删去以该节点为弧尾的所有边,得到一个新图。重复找入度为0的点删去,若到了最后出现了找不到入度为0 的点的情况,说明有环...原创 2018-04-02 13:24:53 · 151 阅读 · 0 评论 -
最小生成树练习
POJ 1789 Truck HistoryDescriptionAdvanced Cargo Movement, Ltd. uses trucks of different types. Some trucks are used for vegetable delivery, other for furniture, or for bricks. The company has its own ...原创 2018-04-17 13:43:14 · 417 阅读 · 0 评论 -
最短路径问题
Dijstra算法求最短路径九度1008题目描述:给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的。输入:输入n,m,点的编号是1~n,然后是m行,每行4个数 a,b,d,p,表示a和b之间有一条边,且其长度为d,花费为p。最后一行是两个数 s,t;起点s,终点t。n和m为0...原创 2018-06-19 14:14:57 · 256 阅读 · 0 评论