为了能到远方,脚下的每一步都不能少.|

HEGVDV

园龄:16天粉丝:0关注:0

堆,可持久化线段树
摘要: 堆,可持久化线段树 I.堆 堆是一颗完全二叉树 堆顶一定是堆中所有元素最大或最小的(对于优先级而言) 实现堆 应该不会有人手写堆吧 用STL的优先队列 定义一个优先队列: 首先你需要一个头文件:#include<queue> priority_queue<int> q;//这是一个大根堆q prio
1
0
0
单调栈,单调队列,树状数组,线段树
摘要: 单调栈,单调队列,树状数组,线段树 I.单调栈 要了解单调栈,首先,我们得了解栈。 栈是一种数据结构,表现为数据“先进先出”。 而单调栈则是栈中所有数据单调递增或单调递减。 如何维护单调栈 我们以维护一个单调递减的单调栈为例: 假设有以下数据 3 7 4 12 2 对于第一个元素,因为栈中没有元素,
4
0
0
字符串处理
摘要: 字符串处理 I.KMP KMP主要应用于字符串匹配问题 KMP相比普通的单模式串匹配的优势在于:对于每次失配,我们不会从头开始,而是从特定的位置开始匹配。 考虑一组样例 模式串 :abcab 文本串 :abcacababcab 首先,前四位按位匹配成功,遇到第五位不同。而这时,我们选择将abcab向
8
0
0
进阶图论
摘要: 进阶图论 I. 割点与桥 首先,我们得了解割点的含义 割点 对于一个无向图,如果把一个点删除后这个图的极大连通分量数增加了,那么这个点就是这个图的割点(又称割顶)。 通俗点说,就是连接两个或多个连通分量的公共点。 如何求割点呢,这里引用一个算法:Ttarjan 定义 dfn[i] 为 i 点DFS访
5
0
0
三分 , 哈希, 模拟退火
摘要: 三分,哈希, 模拟退火 I .三分 三分,顾名思义, 将一个区间分成三段(需要平均分), 以类似二分的处理方式判断答案在那个区间。 接着继续枚举, 直到确定结果。 三分一样需要单调性, 但单调性与二分有所不同。 二分需要满足数据严格“ 递增 ”或“ 递减 ”。而三分只需要满足数据是一个单峰或单谷函数
12
1
0
点击右上角即可分享
微信分享提示
深色
回顶
收起