## 其他
再更多奇技淫巧就需要用到一些高级算法或数据结构了。(我不会)
- [诡异多项式科技](https://www.luogu.com.cn/article/n3mf4mdw)
- [炫酷后缀树魔术](https://www.luogu.com.cn/article/nre3vsql)
-... ...
Go 字符串查找的 20 种实现方式,用不同思路解决问题 字符串查找(在主串中找模式串第一次或全部出现的位置)是最常见的算法。看似只要一行 strings.Index,但背后有几十年的算法演进——同一个任务,朴素算法 O(m×n),KMP 是 O(m+n),Boyer-Moore 在自然文本上接近 ...
对于算法竞赛中最大子段和问题总结三种不同的做法,并比较三种做法的优劣。进而探讨最大子段和问题的本质,并以一道变体题为例深入研究 ...
常见的数据结构 栈(Stack):栈是一种特殊的线性表,它只能在一个表的一个固定端进行数据结点的插入和删除操作。 队列(Queue):队列和栈类似,也是一种特殊的线性表。和栈不同的是,队列只允许在表的一端进行插入操作,而在另一端进行删除操作。 数组(Array):数组是一种聚合数据类型,它是将具有相 ...
以防你不知道,本文的标题灵感来自于木又寸寸又木。 至于括号为什么也翻转……灵感可能来源于哥群周刊罢。 过去的章节节章的去过 再学串串(一):我真的学会 KMP 了吗?评「clx201022 式的傲慢」 再学串串(二):AC 自动机不是自动 AC 机 再学串串(三):被构造自动机上计数 DP 题吓晕 ...
TypeScript 数组去重的 20 种实现方式,用不同思路解决问题 数组去重是最常见的编程算法,非常简单,但也可以有很多的实现方案。TypeScript 在 JavaScript 的基础上加了静态类型,让通用工具函数可以用泛型写一次、对所有可比较类型可用。本文整理 TS 数组去重的 20 种写法 ...
AI时代,基于Ontology本体论的大数据底层结构分析 本文面向架构师、数据工程师、AI 应用开发者。讨论的问题是:在企业 AI 大量落地的今天,Palantir 这家公司被反复提及,背后并非它的模型能力,而是它二十年来构建的一种底层数据结构——Ontology(本体)。本文探讨究竟什么是Onto ...
因为是赛马娘拉车,所以先于 SA 出来了——绝对不是因为不会 SA 什么的(大嘘)。
可能有点水()五一集训去了加之回来五一假回来要期中考,再加上最近状态不太好去看心理医生了所以这次含水量可能有点高。 ...
Go数组去重的20种实现方式,用不同思路解决问题 数组去重是最常见的算法。看似简单,但不同实现方式的性能差异可能高达几百倍。本文整理 Go 数组和切片去重的 20 种写法,按 5 个策略分类,帮你理解每类的核心思路。AI时代,可以不手写代码了,但需要知道代码背后的原理,这样才能更好地指导AI编程。 ...
Java 数组去重的 20 种实现方式,理解不同解决问题的思路 数组与列表去重是最常见的算法。看似简单,但不同实现方式的性能差异可能高达几百倍。整理Java数组去重的20种写法,按5个策略分类,帮你理解每类的核心思路。AI时代,可以不写代码,但需要理解不同解决问题的方式。 为什么性能差异这么大? 最 ...
传送门 赛时开出来的 C: Size Comparison 糖丸了模拟题,要求输出Bigger,输出了larger,吃了罚时 点击查看代码 #include<bits/stdc++.h> using namespace std; using ll=long long ; const int maxn ...
【合并已排序数组的三种实现策略,哪一种更可取?】 说明 合并两个已排序的数组,这在算法中经常遇到,特别是在归并排序算法中。这里分析下几种实现策略。 三种实现策略 策略一:双指针法 思路:使用两个指针分别指向两个数组,同时遍历比较 优势:时间复杂度最优,逻辑清晰 适用场景:大多数情况下的首选方案 策略 ...
1. 算法简介 插头 DP 常用于网格图的 DP 中。其核心在于设计如下几部分: 分界线的设置。 插头状态的定义。 合并和延伸插头的转移。 其中,分界线的设置其实规定了 DP 转移的顺序,区别于状压 DP,插头 DP 通常是对每个格子而非整行转移;而插头状态的定义则代表着转移过程中前驱状态对后继的影 ...
链接:https://pintia.cn/problem-sets/2043859722891493376/exam/overview 这里主要针对天梯赛,其他比赛不太适用,为了自己也为了帮助他人复习以及更稳的备赛,我就做了一个简单的题解。 基础题部分 这一场的 \(L1\)-\(L7\) 我就不写 ...
0.引入 块状链表就是一个链表,每个节点指向一个空间大小为 \(L\) 的数组。一个链表长度为 \(M\),数组空间大小为 \(L\) 的块状链表能装至多 \(ML\) 个元素。 给定参数 \(M\) 和 \(L\),在块状链表中查找一个元素的复杂度是 \(O(M)\),朴素插入和删除一个元素的复杂 ...
为什么要写作本文? 以为自己已经学会了串串[1],结果在摩卡串被创飞才发现自己似乎连最基础的 KMP 都没有学懂,遂写此文。 因此本文不仅是一篇介绍字符串的博客,更是学习的过程。 子曰:「温故而知新,可以为师矣。」这种学习方法也叫费曼学习法。 所以读者在品鉴完本文后还可以去教别人,并告诉他这是一种高 ...
1. 基础概念 根据图论里的知识,我们已经知道了邻接矩阵 \(A\) 的定义。如果是有向图,那么边 \(u_i\to v_i\) 只需要在 \(A_{u_i, v_i}\) 处加上 \(w_i\) 即可;如果是无向图,那么边 \(u_i\leftrightarrow v_i\) 只需要在 \(A_{ ...
赛事信息 题目链接:https://codeforces.com/gym/105992 赛事榜单:https://board.xcpcio.com/provincial-contest/2025/shanghai?group=official 这场打的有点倒闭,只出了3道题,感觉心态还是比较炸,唉, ...
动态规划——背包问题全总结 关于动态规划的背包问题,可分为: 0/1 背包问题 分组背包问题 多重背包问题 完全背包问题 1 0/1背包问题 问题描述 有 \(N\) 件物品和一个容量是 \(V\) 的背包。每件物品只能使用一次。 第 \(i\) 件物品的体积是 \(v_i\),价值是 \(w_i\ ...
赛事信息 题目链接:https://codeforces.com/gym/105911 赛事榜单:https://board.xcpcio.com/icpc/50th/nanchang-invitational 这场 vp 出了 7 道题,整体难度偏简单,下面先把我能补的+赛场上写的写一下。 A. ...