该文被密码保护。 阅读全文
posted @ 2018-01-01 21:55
Konnyaku
阅读(2)
评论(0)
推荐(0)
摘要:
树状数组套主席树 树状数组的每个节点维护的是一段区间,我们将每个区间构造成一棵线段树,这时候如果我们要修改一个值,只需要修改logn个节点即可, 时间复杂度为log^2(n),树状数组维护的区间是数的个数n;离散化时是把所有数(包括要修改的数)全部离散化; 1.修改 在修改之前,我们应先把序列里原来 阅读全文
posted @ 2018-01-01 21:17
Konnyaku
阅读(194)
评论(0)
推荐(0)
摘要:
可持久化线段树-主席树 主席树又称函数式线段树,顾名思义,就是通过函数实现的,也称可持久化线段树,支持在线处理,可以访问历史版本,后一刻可参考前一刻的状态,充分利用共同数据, 节省空间;主席树可以实现查询区间k小的问题等; 主席树的每个节点对应一棵线段树,对于一个序列,我们采用前缀和的思想,如a[1 阅读全文
posted @ 2018-01-01 16:37
Konnyaku
阅读(124)
评论(0)
推荐(0)
摘要:
emm接下来讲讲splay,个人比较喜欢splay,其主要操作就是伸展旋转,它的应用比较广泛,对于一个有序序列,它可以实现区间翻转,还可以求区间第k大。 splay的核心操作-旋转(本人的旋转可能与一般旋转有点不一样): 通过上图两种旋转我们可以发现一点点规律:若要rotate(x),先获取x为该父 阅读全文
posted @ 2018-01-01 15:57
Konnyaku
阅读(252)
评论(0)
推荐(0)
摘要:
TREAP treap(树堆)是指有一个随机附加值满足堆的性质的二叉搜索树,基本操作期望时间复杂度为O(logn),相比于其他平衡树,treap实现较简单,且能实现随机平衡。 在这里我就讲下小根堆的treap(大根堆一样),treap在SBT的性质上还附加了一个随机值(优先级),小根堆的话,当前节点 阅读全文
posted @ 2018-01-01 14:48
Konnyaku
阅读(214)
评论(0)
推荐(0)
摘要:
Link Cut Tree 其实本人觉得LCT对于已经学过树剖与Splay的大佬是很容易理解接受的; LCT是有树链与Splay结合而成的动态树;什么是动态树呢,就是维护森林的联通性的总称; 先介绍一些概念: 1.prefered child:最后被它的点在x的儿子p节点的子树中,那么p为x的偏爱子 阅读全文
posted @ 2018-01-01 14:11
Konnyaku
阅读(192)
评论(0)
推荐(0)

浙公网安备 33010602011771号