树的定义:连通无回路的无向图是一棵树。有关树的问题:1、最小生成树。2、次小生成树。3、有向图的最小树形图。4、LCA(树上两点的最近公共祖先)。5、树的最小支配集、最小点覆盖、最大独立集。一、最小生成树解决的问题是:求无向图中边权值之和最小的生成树。算法有Kruskal和Prim。Kruskal使...
分类:
其他好文 时间:
2014-09-27 20:08:50
阅读次数:
285
LCA思想:在求解最近公共祖先为问题上,用到的是Tarjan的思想,从根结点开始形成一棵深搜树,非常好的处理技巧就是在回溯到结点u的时候,u的子树已经遍历,这时候才把u结点放入合并集合中,这样u结点和所有u的子树中的结点的最近公共祖先就是u了,u和还未遍历的所有u的兄弟结点及子树中的最近公共祖先就是...
分类:
其他好文 时间:
2014-08-29 23:56:28
阅读次数:
691
1.割点:若删掉某点后,原连通图分裂为多个子图,则称该点为割点。
2.割点集合:在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合。
3.点连通度:最小割点集合中的顶点数。
4.割边(桥):删掉它之后,图必然会分裂为两个或两个以上的子图。
5.割边集合:如果有一个边集合,删除这个边集合以后,...
分类:
其他好文 时间:
2014-08-26 21:30:06
阅读次数:
612
http://poj.org/problem?id=1330题意:给出一个图,求两个点的最近公共祖先。sl :水题,贴个模板试试代码。本来是再敲HDU4757的中间发现要用LCA, 操蛋只好用这个题目试试自己写的对不对。 下面是个倍增的写法,挺实用的。好了,继续。。。1#include2#inclu...
分类:
其他好文 时间:
2014-08-23 17:33:41
阅读次数:
233
囧啊囧。lca的求法太多了倍增,tarjan,st,lct,hld....后边三个我就不写了,其中st我没写过,估计用不上,在线用倍增,离线用tarjan就行了。嗯。第一种,倍增(nlogn,在线):倍增的思想用在树上,即可以求出lca。我们维护二维数组,f[i][j],表示i号点的第2^j号祖先,...
分类:
其他好文 时间:
2014-08-21 22:42:24
阅读次数:
278
题目来源:UVa 11354 Bond
题意:n个点m条边的图 q次询问 找到一条从s到t的一条边 使所有边的最大危险系数最小
思路:使最大的危险系数尽量小 答案是最小生成树上的边 然后用LCA倍增法记录s和t到他们最近公共祖先的最大值
#include
#include
#include
using namespace std;
const int maxn = 50010;
con...
分类:
其他好文 时间:
2014-08-21 21:15:54
阅读次数:
171
参考文献1
参考文献2
题目:输入二叉树中的两个结点,输出这两个结点在数中最低的共同父结点
变种一:二叉树是二分查找树,如果根节点比两个节点都小,则访问右子树,都大则访问左子树,否则即为结果
变种二:每个节点有指向父节点的指针,则转变为查找两个单链表的第一个公共节点
变种三:对于普通二叉树,下面给出两种方法
方法一:二叉树的后序遍历,先看节点是否在左子树,再看右子树,然后根据左右子...
分类:
其他好文 时间:
2014-08-21 17:22:34
阅读次数:
197
给一颗树,1为根,要求遍历树上所有点,给出叶子结点的访问顺序,限制每条边至多访问两次。
首先这是一棵树,那么两点之间的路线是确定的,所以我第一遍dfs预处理出从根节点到每个叶子的路径保存,以便后面输出。
那么就按照题目要求输出叶子结点的顺序依次输出,然后从一个叶子到下一个叶子的时候,从他们的最近公共祖先转折,所以我还预处理了相邻两个叶子结点的LCA。
#include...
分类:
其他好文 时间:
2014-08-15 14:37:08
阅读次数:
220
最近公共祖先(Least Common Ancestor)的两种解决方式,在线RMQ算法和离线Tarjan算法,并且整理成为模板。...
分类:
其他好文 时间:
2014-08-14 01:33:07
阅读次数:
374
#include"stdio.h"
#include"string.h"
#include"vector"
using namespace std;
#define N 11000
const int inf=1<<20;
vectorg[N];
int s,t,n;
int f[N],pre[N],ans[N];
bool vis[N];
int findset(int x)
{
if(...
分类:
其他好文 时间:
2014-08-13 22:30:17
阅读次数:
252