
数据结构
671coder
I am 671coder.
www.671coder.com
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【字符串_AC自动机专辑】
一、总概述: 在acm用到的算法中我觉得字符串类算法在实际中的应用价值可能最大,因为我们很多时候在和字符串打交道,在和匹配、查询打交道,比如我们按Ctrl+F的查找,目测有用Kmp匹配算法,linux下的fgrep利用AC自动机实现,还有很多的哈希方法也在各种实际应用中展现它的价值等等。 本文针对AC自动机做个总结,并附带若干题解。 建立AC自动机的一般步骤是:转载 2013-04-13 21:47:03 · 6803 阅读 · 0 评论 -
线段树总结
出处:http://blog.youkuaiyun.com/shiqi_614/article/details/8228102#comments之前做了些线段树相关的题目,开学一段时间后,想着把它整理下,完成了大牛NotOnlySuccess的博文“完全版线段树”里的大部分题目,其博文地址Here,然后也加入了自己做过的一些题目。整理时,更新了之前的代码风格,不过旧的代码仍然保留着。转载 2013-08-02 08:17:25 · 9372 阅读 · 1 评论 -
树状数组题目
先提个注意点,由于Lowbit(0) = 0,这会导致x递增的那条路径发生死循环,所有当树状数组中可能出现0时,我们都全部加一,这样可以避免0带来的麻烦~~ 简单: POJ 2299 Ultra-QuickSort http://acm.pku.edu.cn/JudgeOnline/problem?id=2299 求逆序数,可以用经典的归并排序做,也是基本的转载 2014-05-25 16:03:35 · 5264 阅读 · 0 评论 -
树状数组小结
又做了几道树状数组的题,决定放一块儿总结一下;恩,总结一下。。(ps:大牛可以直接跳过。。。)这得从一张图说起;树状数组中用的d【】,每个点都有一定的管辖范围;如d[1]=a[1];d[2]=a[1]+a[2];d[3]=a[3];d[4]=a[1]+a[2]+a[3]+a[4];等等;这样的结构关键是为了,对一个数组内部动态的删除,增加,来高效的求某个点或者某个区间的值;比如说对数组a,改变某一转载 2014-05-25 16:06:09 · 3317 阅读 · 0 评论