算法/数据结构分析
文章平均质量分 89
岩之痕
已停止更新
展开
-
树状数组实现矩阵中矩形区域的修改以及求和
讲讲树状数组如何实现对一个矩阵的矩形区域的加法和求和。原创 2015-04-15 18:45:26 · 2058 阅读 · 0 评论 -
数据结构分析之线性哈希表(Linear Hash Tables)
在看Hector Garcia-Molina,Jeffrey D.Ullman,Jennifer Widom等人写的《数据库系统实现》的时候,第14.3节介绍了两种可以动态扩充容量的哈希算法。1.Extensible Hash Tables2.Linear Hash Tables(以下简称LHT)第一种方法有其局限性,具体可以去看书,本文主要介绍第二种方法。哈希原创 2015-09-24 18:47:16 · 9073 阅读 · 1 评论 -
Codeforces 86D. Powerful array (MO's Algorithm(区间查询的离线优化))
题意:给一个长度为n的数组,有 t 个区间询问,求一个特定的值。这个值 = 对区间内出现的每个值v,累加 V 乘上(V的出现次数的平方)。刚刚学了MO's Algorithm,看文章说这题比较经典,就来做做看了。MO's Algorithm:就是对于一个区间的询问来说,如果该询问支持Add和Remove(即,区间信息的维护支持加和减),就可以考虑使用这个算法。假设有N个数,M个原创 2016-03-09 15:04:27 · 1130 阅读 · 0 评论 -
动态规划求小于等于n的质数个数
动态规划求小于等于n的质数个数原创 2016-05-10 20:25:58 · 4880 阅读 · 0 评论 -
线段树从零开始
从零开始讲线段树,适合有一定C/C++编程基础,想学习线段树的读者。原创 2016-08-22 22:26:41 · 55519 阅读 · 82 评论 -
线段树详解 (原理,实现与应用)
线段树详解By 岩之痕一:综述线段树是一种可以快速进行区间修改和区间查询的数据结构。点修改,区间修改和区间查询的复杂度都是O(log2(n))并且,线段树可以维护很多种类的信息。说到线段树就不得不提一下树状数组,树状数组维护的信息必须满足区间减法,因为树状数组只是维护1到X的信息,通过相减来得到区间信息,代码简单而且速度快,占用空间又少于线段树,所以一般情况下可以用树状数组的地方就原创 2015-09-09 01:58:46 · 140433 阅读 · 81 评论 -
对树状数组的一点理解
树状数组 By 岩之痕一、概述树状数组是一种 用数组进行存储的 自下而上进行操作的 多叉树。以下叙述中,A为原数组,C为树状数组所用的数组,B为特殊情况需要用到的辅助数组。最基本的应用就是维护一个支持两种操作的数列:1.让A[i]加上某数X 2.求一个区间A[L] + A[L+1] + ... + A[R] 的和。树状...原创 2015-04-13 17:01:05 · 3556 阅读 · 5 评论