程序设计算法——数据结构
文章平均质量分 78
数据结构
Vic.GoodLuck
窗外有风景,笔下有前途!
展开
-
并查集
【代码】并查集。原创 2023-01-13 16:05:34 · 29 阅读 · 0 评论 -
树状数组
【代码】树状数组(单点修改,区间查询)原创 2023-01-13 17:03:22 · 24 阅读 · 0 评论 -
线段树
维护区间和,但要分别利用两个懒标记来处理区间加和区间乘的更新信息。维护区间的最大左前缀和以及最大右前缀和。维护区间和,用lazy标记记录更新信息。原创 2023-01-13 22:11:32 · 34 阅读 · 0 评论 -
KMP Trie树 AC自动机
1.KMP(记模板)https://www.acwing.com/problem/content/833/get_next()从2开始 KMP从1开始 串的坐标都从1开始int n,m;//n模式串长度 m母串长度char s[1000005];//母串char p[100005];//模式串int ne[1000005];//串的坐标都从1开始void get_next(){ for(int i=2,j=0;i<=n;i++) { while(j&.原创 2022-02-09 21:11:12 · 286 阅读 · 0 评论 -
单调队列 单调栈
154. 滑动窗口 - AcWing题库求长度为k的滑动窗口内的最大/小值单调队列中的数具有单调性例如求最大值时,队列左端的数最大,右端的数最小1.当第i个数进入滑动窗口时,首先判断队列左端的数是否还在窗口内(拿窗口左端下标和队列中的下标对比)2.判断新来的数是否能替换单调队列中的数,从队列右端开始比较,比如求最大值时,如果新来的数比队列右端的数大,则弹出队列右端,直到队列空或不能替换,将新数插入队列下面是求滑动窗口最小值的代码,最大值的话将第二步的大小符号调换即可 in原创 2022-02-09 16:14:05 · 155 阅读 · 0 评论