1 //无向图求割边 2 #include <cstdio> 3 #include <cstdlib> 4 #include <cstring> 5 #include <cmath> 6 #include <algorithm> 7 #include <queue> 8 #include <stac ...
分类:
其他好文 时间:
2020-04-26 14:05:12
阅读次数:
57
用到的算法 割边 + 缩点(得到边连通分量) + 朴素LCA 算法解析 + 无向图区分重边与同一条边的反方向: 对每一条边都用一个变量id来标识,一条无向边的两个方向用同一个id表示。 + 割边: ,即以点v为根的子树不能到达点u及以上,所以边uv为一条割边。 + 缩点(得到边双连通分量): 去掉桥 ...
分类:
其他好文 时间:
2020-04-26 13:55:29
阅读次数:
62
1.无向图可以用邻接矩阵G [n] [n] —— n个顶点从0到n-1编号,若<Vi, Vj>是G中的边,则G [i] [j] = 1,否则G [i] [j] = 0;矩阵的特点:对角线都为0,以对角线为对称轴,两边对称。 对于无向图的存储,可以用一个长度为n(n+1)/2的1维数组a存储,可以节省 ...
分类:
其他好文 时间:
2020-04-26 01:03:50
阅读次数:
221
数据结构 图 一、基本介绍 图是一种数据结构,其中结点可以具有零个或者多个相邻元素。两个结点的连接称为边,结点也可以称为顶点 1.1 图的常用概念 顶点 边 路径 无向图 有向图 带权图 1.2 图的表示方式 邻接矩阵(二维数组) "逻辑结构" 分为两部分:V和E集合,其中,V是顶点,E是边。因此, ...
分类:
编程语言 时间:
2020-04-24 19:49:18
阅读次数:
65
1 typedef char InfoType; 2 //图的邻接矩阵储存方法 3 4 //图的邻接矩阵表示是唯一的 5 //邻接矩阵适合储存边的数目比较多的稠密图 6 //无向图的邻接矩阵是一个对称矩阵 7 //对于无向图,第i行或者第i列非0,非INF元素的个数正好是顶点i的度 8 //对于有向 ...
分类:
编程语言 时间:
2020-04-24 17:32:51
阅读次数:
71
题意描述 "Cow Toll Paths G" ~~这道题翻译的是真的不错,特别是第一句话~~ 给定一张有 $n$ 个点 $m$ 条边的无向图,每条边有边权,每个点有点权。 两点之间的路径长度为所有边权 + 点权的最大值,求 $q$ 组 $s\to t$ 的最短路径。 算法分析 数据范围 $n\le ...
分类:
其他好文 时间:
2020-04-24 01:45:39
阅读次数:
66
http://codeforces.com/contest/1343/problem/E 给定一个无向图,n个顶点,m条边,以及长度为m的数组(边权),保证每对顶点之间至少有一条路径; mike计划从顶点a到顶点b再到顶点c,同一个顶点可以访问多次,每条边有一个边权,问怎样分配边权才能使mike走过 ...
分类:
其他好文 时间:
2020-04-23 09:17:22
阅读次数:
75
题意描述 "[BOI 2002]双调路径" 题意描述的确实不是很清楚~~(出题人惜字如金)~~。 给定一张有 $n$ 个点,$m$ 条边的无向图,每条边有两个权值,分别表示经过这个点的代价和时间。 同时给出起点 $s$ 和终点 $t$,显然 $s\to t$ 的路径有很多条。 其中说路径 A 比路径 ...
分类:
其他好文 时间:
2020-04-23 01:07:46
阅读次数:
78
问题提出:n个人,组成多个团体,给出关系链,多个查询,其中两人是否为同一团体 解决方法: 1. 构建一个无向图,同一个团体加同样的标记,合并时复杂度很高,查询为O(1) 2. 并查集,树形结构的数组(不相交集合的合并,查询等问题):建立集合,查询元素所在集合,合并集合... 初始化:f(i) = i ...
分类:
其他好文 时间:
2020-04-22 13:27:37
阅读次数:
66