![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Rabin-Karp 字符串哈希算法
996冲冲冲
这个作者很懒,什么都没留下…
展开
-
1923. 最长公共子路径
解题思路:二分查找找长度,check函数判断是否符合。原创 2022-11-27 21:58:46 · 126 阅读 · 0 评论 -
leetcode718. 最长重复子数组
思路是把nums1和nums2中每个节点都当作一遍起点但是这样会重复,导致复杂度过高。采用改进的思路是将这两个字符串逐位进行对齐,这样的话就可以把两个字符串同时进行遍历。原创 2022-11-04 21:32:22 · 59 阅读 · 0 评论 -
leetcode1461. 检查一个字符串是否包含所有长度为 K 的二进制子串
【代码】leetcode1461. 检查一个字符串是否包含所有长度为 K 的二进制子串。原创 2022-11-26 21:51:22 · 58 阅读 · 0 评论 -
leetcode1392. 最长快乐前缀
这题前缀和后缀的定义是从头和尾计算,其实比较简单。原创 2022-11-26 16:28:48 · 325 阅读 · 0 评论 -
leetcode1147. 段式回文
掌握了Rabin-Karp 算法这题应该挺简单。贪心思路比较直接,但不会证明。原创 2022-11-24 15:27:43 · 137 阅读 · 0 评论 -
leetcode1044. 最长重复子串
不要每次都去一个字符一个字符地比较子串和模式串,而是维护一个滑动窗口,运用滑动哈希算法一边滑动一边计算窗口中字符串的哈希值,拿这个哈希值去和模式串的哈希值比较,这样就可以避免截取子串,从而把匹配算法降低为 O(N)这题还用到了二分来快速的查找最长字串的长度应该是多少。这样每个起点的最长重复子串都计算了一遍。枚举起点,如果符合尝试扩大窗口。Rabin-Karp 算法。不符合的时候缩小窗口。原创 2022-11-24 13:28:26 · 166 阅读 · 0 评论 -
leetcode187. 重复的DNA序列
定长的滑动窗口加上哈希。原创 2022-11-06 22:58:02 · 63 阅读 · 0 评论 -
leetcode214. 最短回文串
如果截取一个能形成回文串说明原字符串除了最后一个应该已经是回文串了。先将字符串进行反转,然后遍历看添加反转后的多少到前面能形成回文串。具体是从0开始截取到字符串长度减1的时候一定能截到。Rabin-Karp 字符串哈希算法。依次类推,从低向上递增,找最少答案。也就是反转后的应该等于反转前的。从后往前截取找最长回文子串。原创 2022-11-23 16:42:54 · 152 阅读 · 0 评论