随笔分类 -  图论

摘要:kruskal重构树 kruskal生成树算法是利用贪心和并查集来找到一颗最小生成树,但是他可以求解的信息不止于MST 如果为每次取出的合法边新建一个结点,此结点的点权为边的边权,将整张图看作是点权图,就会得到一颗二叉树,而这颗二叉树满足任意一个如果有权值则有两子,否则为叶节点 最小生成树上两点的距 阅读全文
posted @ 2020-06-01 18:24 nebulyu 阅读(155) 评论(0) 推荐(0)
摘要:最小环 在一个图中,求一个由不少于3个点构成的最小环 无向图 求环的长度就是求两点加上中间任意一个松弛点的距离和,即$dis[i][j]+val[i][k]+val[k][j]$,要得到$dis[i][j]$,可以使用最短路算法求解 由于要保证$dis[i][j]$经过的点集中一定不含有k,可以利用 阅读全文
posted @ 2020-05-27 11:21 nebulyu 阅读(312) 评论(0) 推荐(0)
摘要:差分约束 在一个由n个变量和m个约束条件组成的系统,如$x_i x_j=x_i$ 这看起来很像spfa三角不等式的判断,如果把整个系统看作一张有向图,这个式子又可以写成 $dis[pos]+val =dis[to]$ 这个不等式的反向命题 $dis[pos]+valk$ $x_j x_i k$ 放在 阅读全文
posted @ 2020-05-22 10:16 nebulyu 阅读(141) 评论(0) 推荐(0)
摘要:最小树形图 概念:在一个给定边的有向图中,求以一个点为根的生成树,换句话说这个图中只有一个点入度为0,其余点入度均为1,且在此基础上进行约束,如要求边权和最小等 首先,在最小树形图中一般要以弧的形式存图,并保存一个点的前驱 主体就是朱刘算法,分4个步骤 1.求最短弧集合 2.判断集合中是否有环,具体 阅读全文
posted @ 2020-05-11 01:01 nebulyu 阅读(411) 评论(0) 推荐(0)