LCA
Han Gang
这个作者很懒,什么都没留下…
展开
-
How far away ?(LCA Tarjan算法)
题目传送门:HDU-2586这道题题意很简单,给你了n个村子,然后给了n-1条带权值的边,(就等于说给了你一棵树,m次询问,问你x道y的最小距离是多少。很明显就是让求两个点的lLCA,(倍增法还是很好用的),今天准备练习一下用Tarjan算法求一下LCA,就拿这道题来练练手了。Trajan求LCA算法是一个离线算法O(N∗M)O(N*M)O(N∗M),时间复杂度可能要比倍增法(O(N∗M∗l...原创 2020-04-24 16:53:53 · 236 阅读 · 0 评论 -
LCA(倍增法)
LCA(最近公共祖先):给你一棵树,然后给你两个点,让你找到这两个点的最近公共祖先,俩个点的公共祖先有很多,但是其中距离两个点的距离之和最小的那个祖先就是最近公共祖先。刚学了树上倍增法求LCA最近做了几个板子题,记录一下这种算法的基本,,,过程吧。fa数组:倍增关键数组,fa[i][j]表示以i开始找2j步的祖先,例如fa[i][0]就表示i的20的祖先也就是i的父结点。de数组:当前这个...原创 2020-04-22 14:51:00 · 1248 阅读 · 2 评论