会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
bennettz
Few of us can do great things, but all of us can do small things with great love.
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
···
10
下一页
2018年3月6日
Konig定理及证明
摘要: Konig定理 由匈牙利数学家柯尼希(D.Konig)于1913年首先陈述的定理。 定理的内容:在0-1矩阵中,1的最大独立集合最小覆盖包含的元素个数相同,等价地,二分图中的最大匹配数等于这个图中的最小点覆盖数。 证明: 对于上面的二分图,它的最大匹配(不唯一)已经用红线标出来了, 然后我们对于右边
阅读全文
posted @ 2018-03-06 19:57 Bennettz
阅读(3477)
评论(0)
推荐(2)
2018年3月5日
块状链表
摘要: 概述 如果要维护一个序列,我们通常会使用数组和链表 但是如果要在序列中插入一些元素,以上两种数据结构的复杂度都是O(n) 于是就有了块状链表,它是数组和链表的结合:即一个链表的节点是一个数组 如果使链表的每个节点大小<sqrt(n),相邻两个节点大小和>sqrt(n),则链表长度也保持在 [sqrt
阅读全文
posted @ 2018-03-05 10:40 Bennettz
阅读(294)
评论(0)
推荐(1)
2018年1月30日
伸展树(Splay Tree)
摘要: 伸展树是一种自平衡二叉查找树,它将每次操作的节点都旋转到根节点,伸展树操作的均摊时间复杂度为logn 基本操作 存储 伸展操作 伸展树的最基本的操作当然就是伸展了,这也是它自平衡的基础 splay(x,S)表示在保持伸展树有序性的前提下,通过一系列旋转将伸展树S中的元素x调整至树的根部。 旋转操作就
阅读全文
posted @ 2018-01-30 20:50 Bennettz
阅读(620)
评论(0)
推荐(1)
AVL树
摘要: AVL树得名于它的发明者 G.M. Adelson-Velsky 和 E.M. Landis,是一种高度平衡的自平衡二叉查找树 它的查找、插入和删除在平均和最坏情况下都是O(log n),这得益于它的性质: 在满足二叉查找树的性质情况下,还满足每个结点的左右子树的高度之差的绝对值(平衡因子)最多为1
阅读全文
posted @ 2018-01-30 09:52 Bennettz
阅读(259)
评论(0)
推荐(1)
2018年1月27日
Size Balanced Tree(节点大小平衡树)
摘要: 定义 SBT也是一种自平衡二叉查找树,它的平衡原理是每棵树的大小不小于其兄弟树的子树的大小 即size(x->l)$\ge$size(x->r->l),size(x->r->r),右边同理size(x->r)$\ge$size(x->l->l),size(x->l->r) 具体操作 旋转 旋转几乎是
阅读全文
posted @ 2018-01-27 15:58 Bennettz
阅读(2585)
评论(2)
推荐(1)
2018年1月26日
Treap
摘要: 定义: Treap,顾名思义,就是tree和heap的结合,既满足二叉搜索树的性质,又满足二叉堆的性质 但是一个要求节点值小于右儿子的值,一个要求节点值大于右儿子的值,显然不可能做到 那我们只能一个节点存两个值,一个满足二叉搜索树(BST)性质,一个满足二叉堆的性质:如下图 节点中黑色的值满足二叉搜
阅读全文
posted @ 2018-01-26 16:10 Bennettz
阅读(326)
评论(0)
推荐(1)
2018年1月25日
可持久化线段树(主席树)
摘要: 定义 可持久化线段树是可以保留历史版本的线段树,相当于保留了每次修改后的线段树,并且可以对每次修改后的结果进行查询 主要思想 对于询问历史版本的问题,我们对每次修改都新建一棵线段树 但是如果修改次数特别多,这样肯定是不可行的,这就要用到可持久化线段树了 我们通过观察可以发现,对于线段树的每次修改,不
阅读全文
posted @ 2018-01-25 16:30 Bennettz
阅读(233)
评论(0)
推荐(1)
2018年1月24日
划分树
摘要: 定义 划分树是一种基于线段树的数据结构。主要用于快速求出序列区间的第k大值。 划分树的根节点存储原数列 每个节点的左子节点存储它元素中较小的一半,右子节点存储它元素中较大的一半 并且同一个节点中元素的排列和原数列一样 例如1,5,3,4,2构成的划分树如下图所示 具体操作 建树 我们发现每层所有节点
阅读全文
posted @ 2018-01-24 22:12 Bennettz
阅读(319)
评论(0)
推荐(1)
归并树
摘要: 定义 归并树是线段树和归并排序的合成,它利用线段树将归并排序的每一步都记录下来 例如我们对1,5,3,4,2进行归并排序,就可以生成下面的归并树 归并树的每个父节点就是两个子节点归并排序后的结果 并且归并树的叶子节点的顺序是初始序列的顺序 用处 可以快速求出在原序列的一个区间中比某个数小(大)的有多
阅读全文
posted @ 2018-01-24 16:21 Bennettz
阅读(3554)
评论(0)
推荐(2)
2018年1月20日
zkw线段树
摘要: zkw线段树是一种用空间换取操作的简便性和时间常数的线段树。 它使线段树节点的存储位置有规律,从而将线段树的递归操作用循环替代 zkw线段树一般分为有区间修改和无区间修改两种,无区间修改的zkw线段树可以做到O(1)的单点查询,比有区间修改的要快 无区间修改的zkw线段树 建树 下面用一张图解释普通
阅读全文
posted @ 2018-01-20 12:45 Bennettz
阅读(1188)
评论(0)
推荐(1)
上一页
1
2
3
4
5
6
7
···
10
下一页
公告