考虑强连通分量C,设其中第一个被发现的点为x,则,C中其他的点都是x的后代。我们希望在x访问完成时立即输出C(可以同时记录C,输出代表当前在当前的遍历序列中剔除),这样就可以在同一颗DFS树种区分开所有SCC了,因此问题的关键是判断一个点是否为一个SCC中最先被发现的点。...
分类:
编程语言 时间:
2016-05-12 23:54:53
阅读次数:
354
原文地址:树边,前向边,后向边,横叉边
树边,前向边,后向边,横叉边,应该说,不是一个图本身有的概念,应该是图进行DFS时才有的概念。图进行DFS会得到一棵DFS树(森林),在这个树上 才有了这些概念。对图进行DFS,可以从任意的顶点开始,遍历的方式也是多样的,所以不同的遍历会得到不同的DFS树,进而产生不同的树边,前向边,后向 边,横叉边。所以这4种边,是一个相对的概念。
在图的遍历...
分类:
其他好文 时间:
2016-05-12 22:02:37
阅读次数:
189
题目链接:codeforces 455C题目大意:给出一些点,他们之间初始存在一些边,给出两种操作,第一种是查询某个点所在的树的直径,另一种是将两个树合并,要求使合并后的树的直径最小。题目分析:
首先算取没做操作前的连通块里的树的直径,也就是先dfs一遍,找到深度最大的点,然后从这个点再搜,找到的最远的距离就是这棵树的直径,因为可以证明从根搜深度最大的点一定是树的直径的一个端点,因为它可以通过到达次...
分类:
其他好文 时间:
2015-10-03 16:58:57
阅读次数:
174
给我们一个图,然后有q次加边的操作,问每次加完边之后有多少个桥存在首先用dfs求出所有的桥,然后dfs的过程中生成了一棵dfs树,该树有的边是桥,有的不是,用bridge[v] = true , 表示v与fa[v]的连边是桥当加入一个边u,v后, u,v,lca(u,v)上的边从割边变成了非割边。至...
分类:
其他好文 时间:
2015-09-09 16:27:08
阅读次数:
199
题意:
给出一个n个结点m条边的无向图,用两种颜色来对结点染色;
求图中有多少条边,可以存在一种方案,使这条边两段的颜色相同而其他边两端颜色不同;
n
题解:
这题感觉正解大框很容易想,但是最终写出来还是很难的似乎;
最简单的暴力就是枚举边然后给图染色;
然后还有n==m的基环树,搜个环讨论一下就又有一些分;
正解的话显然要找环,然而如何找环Tarjan早已给出了答案;...
分类:
其他好文 时间:
2015-08-31 07:38:14
阅读次数:
253
题意:
告诉你一颗树的父子关系,1节点为根,再告诉你每个点上的字母。
问 v节点 子树(包括v节点)在第h行的所有节点的字母能否组成回文串。
做法:
先用dfs 搜索 把所有节点标个左标号和右标号。 这样标号以后,每个节点 用左标号 当自己 新的标号。 然后 子树所有节点 的新标号 肯定在 子树根节点的 左右标号之间。
标号之后分层来做。
每层 对每个字母分别做统计。
把该层所有节点 的 左标号 在树状数组中+1. 然后对于该层的所有询问 做 树状数组统计,(sum(rit[v])-sum(lft[v...
分类:
编程语言 时间:
2015-08-16 12:26:18
阅读次数:
167
官方题解是离线询问,dfs树形转线性,然后二分找区间。还有一种比较好的做法是直接dfs,将当前访问这个结点u相关的询问之前的状态存起来,然后访问完以后利用异或开关性,得到这颗子树上的答案。代码是学习别人的http://blog.csdn.net/squee_spoon/article/details...
分类:
其他好文 时间:
2015-08-15 00:01:55
阅读次数:
512
图有两种标准的表示方法,即邻接矩阵和邻接表(通常邻接矩阵用于稠密图,邻接表用于稀疏图)。如下:
对于图的搜索有两种方法:深度优先搜索 & 广度优先搜索。
广度优先搜索(Breadth-first search)
广度优先搜索是将已发现和未发现顶点之间的边界沿其广度方向向外扩展。亦即算法首先会发现和s距离为k的所有点,然后才会发现和s距离为k+1的其他顶点。
伪代码:
...
分类:
编程语言 时间:
2015-07-20 09:18:55
阅读次数:
184
Balanced Binary Tree : https://leetcode.com/problems/balanced-binary-tree/given a binary tree, determine if it is height-balanced.For this problem, a height-balanced binary tree is defined as a binary...
分类:
其他好文 时间:
2015-07-03 15:51:33
阅读次数:
118