- 博客(14)
- 收藏
- 关注
原创 kmp算法
KMP算法的主要思想是利用模式串本身的重复信息,构造一个next表:第i位标识从第1个到第i个字符的。,在匹配失败时,通这个表确定下一次匹配的位置。我们已经知道,前后某部分字串相同,所以当。当前一位匹配成功,就在前面的基础上长度加一,即next[i-1]加1,的长度,将前缀移到当前位置,大大缩短了查找时间。如果不是,就回溯,找上一位最长公共前后缀的下一位。第i位字符串匹配不上时,我们取第i-1位的。如何去求next呢?
2025-04-05 16:33:57
478
原创 哈希冲突及解决办法
在上一节中,我们提到了哈希冲突这一在做题中极为常见的错误在做题中,我们在处理字符串哈希的时候,有可能会遇到两个字符串(这里以字符串距离)并不相同,但是计算后的两个哈希值相同,这时候我们就需要处理哈希冲突了。
2025-03-27 20:53:00
977
原创 字符串哈希
字符串哈希其实就是把一段字符串转化成一个数字。在进行字符串匹配时不需要再 O (n)匹配字符串本身,而只需要匹配两个字符串的哈希值就好了O(1)
2025-03-22 16:08:29
1102
原创 单调队列的使用
队列中的元素始终保持着单增或者单减的特性。类似于单调栈但是不同于单调栈,队列我们可以获取队列中数据的个数注意是双端队列于是我们就可以解决类似于“滑动窗口”的问题,区间最小值示例看上一篇单调栈的。
2025-03-09 11:51:53
338
原创 逆元基本性质与运用
逆元,类似于倒数,如果ax≡1modp,且gcdap1(a与p互质),则称a关于模p的乘法逆元为x。注意:只有a和p互质的时候,a才有关于p的逆元,所以当有多个p和a互质时,所求的a关于p的逆元也是不同的。a∗x≡1modp其中x叫做a的关于pinvax所以a∗inva≡1modp例如:若a*x = 1那么x是a的倒数,x = 1/a但是a如果不是1,那么x就是小数。
2025-02-05 17:25:36
1972
原创 拓扑排序与动态规划
如果一个有向图无法从某个顶点出发经过若干条边回到该点,则这个图是一个。拓扑排序指是将一个DAG图中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边<u,v>∈E( g ),则u在线性序列中出现在v之前。
2025-02-04 18:37:38
416
原创 Y1-1补题报告
1、在一个题目上思考时间不足,“以为”自己已经读懂,就动手开始写代码,但是细节还没有考虑清楚,实际做法也没有想完整,导致一个程序反复改多次,时间浪费严重2、读题,尤其题面较长题目,只看大概,读题不完整,“关键”字眼没有扣清楚3、心态不好,多次提交WA之后,心态开始崩溃,开始快速浏览其他题目,每个题目都看个大概,写个大概,都没有深入的进行完成。4、代码细节处理问题比较大,例如:多测注意点、int还是long long、初始赋值等。
2025-01-24 21:12:57
458
原创 常见STL库的使用
vector动态数组,可定义任意类型变量方式一:构造一个某类型的空容器:vector<数据类型>函数名;初始化为空。方式二:构造一个含有n个val的某类型容器:vector<数据类型>函数名(a,b).定义a个空间,都初始化为b。
2025-01-19 14:32:49
367
转载 riscv-model 0.6.6
默认情况下,它将使用 riscv32-unknown-elf-gcc 和 riscv32-unknown-elf-objcopy,但您可以使用 --compiler 和 --objcopy 配置这些工具。riscv-random-asm-check 生成随机汇编程序序列,编译它们,读回机器代码并匹配它们。你可以用它来测试你的编译器,但它也被用作 riscv 模型本身的健全性检查。它旨在成为基于 Python 的自动化测试和验证的资源。它正在开发中,还不是很有用,但可用于生成随机汇编代码。
2023-11-05 20:00:42
138
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅