树
文章平均质量分 70
相册的记忆
这个作者很懒,什么都没留下…
展开
-
线段树入门总结
树结构的基本思想是分割,普通二叉搜索树是按照数据来划分(想了解二叉搜索树的请移步:Here),线段树处理的对象是线段(区间也可以看成线段,L==R时为一个点),它把线段组织成有利于检索和统计的形式,它的本质是线段的二叉搜索树。但是它的线段可以分解和合并,线段树又有一些一般二叉检索树没有的特殊操作。另外线段树操作的是整个区间,它的时间复杂度不依赖于数据对象。它将一个区间划分成一些单元区间,每个单元区间转载 2016-05-24 20:03:39 · 282 阅读 · 0 评论 -
线段树区间更新
给出一个n个元素的数组A1,A2,...,An。我们总共进行m次操作。每次操作为下列两种操作其中一种: 1、Add(L, R, v): 将A(L), A(L+1),...,A(R)的值全部增加v。 2、Query(L, R): 计算子序列A(L), A(L+1),...,A(R)的元素和,最小值和最大值。 注意:A(L),括号为下标。 如果我们采用单点更新,我们不难发现每一次都转载 2016-05-24 20:10:00 · 292 阅读 · 1 评论 -
二叉搜索树
1、什么是二叉搜索树 二叉搜索树(Binary Search Tree)是一棵有序的二叉树,所以我们也可以称它为二叉排序树(不知道二叉树的童鞋,先看看二叉树:传送门)。具有以下性质的二叉树我们称之为二叉搜索树:若它的左子树不为空,那么左子树上的所有值均小于它的根节点;若它的右子树不为空,那么右子树上所有值均大于它的根节点。它的左子树和右子树分别也为二叉搜索树。 2、二叉搜索树的结构 二叉搜索树转载 2016-05-24 20:02:09 · 211 阅读 · 0 评论