学习笔记
milkmmilkme
这个作者很懒,什么都没留下…
展开
-
普通线段树
线段树是一种二叉搜索树,对于一段区间,父节点区间的区间由左节点的区间加上右节点组成,基于二叉树的性质,建立一般的线段树。可用于维护类似区间和,区间最大值最小值之类的数据 于是可以基于二叉树性质建树 void build(int nood,int l,int r) { tree[nood].L=l; tree[nood].R=r; if(l==r) {tree[noo...原创 2018-04-03 21:17:54 · 164 阅读 · 0 评论 -
ZKW线段树
一般的线段树采用的是自顶向下递归建树的办法,但这样写起来比较麻烦,于是有人就想着能不能有自底向上的建树,ZKW线段树就出现了。 基于二叉树的性质我们知道,对于一个叶子节点数为n(2的k次方)的满二叉树,它的第一个叶子节点标号同样为n,于是对于一个有m个点的区间,我们可以假设它是一个满二叉树,只不过一部分数据为0,于是我们只需要找到大于m的最小n,并顺序输入即可建树 void down(in...原创 2018-04-04 09:52:11 · 136 阅读 · 0 评论 -
最大流Dinic
原创 2018-05-09 17:13:39 · 233 阅读 · 0 评论