算法
文章平均质量分 58
Nikonikonikonkoniko
这个作者很懒,什么都没留下…
展开
-
串的模式匹配(简单匹配、KMP以及手工算next/nextval)
假设模式串从第一个字符到不匹配的字符之前的部分串为 F 而 与不匹配位置开始的前缀为 G,与 G 匹配相等的模式串某后缀为 H ,我们要做的就是将 F 后移直到 G 与 H 重合,H 的下一个位置则为模式串需要跳转比较的新位置,为了记录这些新位置我们引入 next[]数组以记录发生不匹配的情况时 j 跳转的位置。KMP模式匹配中每当遇到不匹配的位置,我们往前看以匹配好的部分串,如果以匹配成功的模式串的部分串中,存在与不匹配位置(不匹配位置前面)相等的后缀,那么我们就移动模式串(难以理解,看下图)原创 2024-03-17 19:37:29 · 910 阅读 · 0 评论 -
分页式存储管理方式之地址变换习题
说明:上一步骤得到的页号P=2,根据页表2对应的块号为8,所以A=09C4H转化成物理地址=8 * 1024 + d = 21C4H。说明:在本示例中,将A转化成十进制之后,因为页面大小为2^10,所以后十位为页内偏移地址也就是页内地址d,剩下的则是页号P。,int[]是整除函数,mod是取余函数。原创 2022-11-25 16:30:45 · 1865 阅读 · 4 评论 -
150. 逆波兰表达式求值中出现的错误(.equals引发的血案)
题目要求的是既可以把中途运算的结果转化为表达式也可以转化为整数结果,我是直接转化为整数结果,思路很简单,循环遍历字符串,遇到数字字符直接压入栈,如遇到运算符,则把栈顶的两个数字弹出,第二个测试用例是:tokens = ["10","6","9","3","+","-11","*","/","*","17","+","5","+"]好家伙这报错的不是tokens的最后一个字符串,检查一下代码,好家伙判断字符串是否相等居然用了==,真像给自己一个大臂兜,改成.equals。...原创 2022-08-30 15:29:04 · 190 阅读 · 0 评论 -
LeetCode377. 组合总和 Ⅳ
原题链接:377. 组合总和 Ⅳ代码展示: 结果:原创 2022-07-14 10:18:10 · 56 阅读 · 1 评论