
高级数据结构
文章平均质量分 84
zyg0121
这个作者很懒,什么都没留下…
展开
-
浅谈倍增查找LCA
前言LCA是什么如何实现LCALCA模板题题目描述 Description输入描述 Input Description输出描述 Output Description样例输入 Sample Input样例输出 Sample Output数据范围及提示 Data Size Hint前言这篇文章,是一篇总结倍增查找LCA的一篇文章,同时也是实现在浅谈RMQ算法文章中承诺.若有疑问或建原创 2017-04-02 21:15:45 · 1349 阅读 · 0 评论 -
浅谈RMQ算法
前言RMQ是什么RMQ算法描述RMQ算法的不足RMQ算法例题前言这篇文章,是一篇总结RMQ算法的一篇文章,若有疑问或建议,请于下方留言,谢谢!RMQ是什么?RMQ(Range Minimum/Maximum Query),即区间最值查询。是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j<=n),返回数列A中下标在i,j之间的最小/大值。这两个问题是在实际应用中原创 2017-04-02 21:20:54 · 1293 阅读 · 0 评论 -
[STL] 浅谈Rope使用(附[BZOJ]1507 Editor)
前言今天做一道题:BZOJ1507: [NOI2003]Editor,然后用splay打了一个,真的心累。然后看网上的做法,竟然有人用不到40行的代码A掉了这题,然后一看,就是今天要谈的Rope。简介在2008年OI集训论文上有介绍《对块状链表的一点研究》,块状链表主要是结合了链表和数组各自的优点,链表中的节点指向每个数据块,即数组,并且记录数据的个数,然后分块查找和插入。在g++头文件中,ext/原创 2017-06-10 09:40:07 · 1272 阅读 · 0 评论 -
[BZOJ1500][NOI2005]维修数列
Description Input 输入的第1 行包含两个数N 和M(M ≤20 000),N 表示初始时数列中数的个数,M表示要进行的操作数目。 第2行包含N个数字,描述初始时的数列。 以下M行,每行一条命令,格式参见问题描述中的表格。 任何时刻数列中最多含有500 000个数,数列中任何一个数字均在[-1 000, 1 000]内。 插入的数字总数不超过4 00原创 2017-06-10 16:38:25 · 342 阅读 · 0 评论 -
[SPOJ375] QTREE - Query on a tree
Description You are given a tree (an acyclic undirected connected graph) with N nodes, and edges numbered 1, 2, 3…N-1. We will ask you to perfrom some instructions of the following form: C原创 2017-06-10 16:46:50 · 379 阅读 · 0 评论 -
浅谈扩展KMP算法
前言首先,kmp算法大家都知道,但是听到扩展kmp的时候,会想到底是干什么的? 那么扩展kmp算法是用来求解下面问题的: 给定母串S,和子串T。 定义n=|S|n=|S|, m=|T|m=|T|,extend[i]=S[i..n]extend[i]=S[i..n]与T的最长公共前缀长度。请在线性的时间复杂度内,求出所有的extend[1..n]extend[1..n]。我们其实可以知道原创 2017-06-11 14:38:26 · 664 阅读 · 1 评论