自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 KMP算法求next数组

开始移动指针i,找到与前缀第一个字符相同的字符作为后缀的起始位置(如果不相同,j不动,i一直向后移动),找到第一个相同的字符后,对于已经遍历过的字符所组成的字符串来说,i此时指向的该字符串的末尾,如下图所示,此时已经遍历过的字符串为。但这样一来就需要回退遍历指针 i ,而且就没有利用好前面已经得到的信息,这里其实就和KMP算法要解决的问题是一样的,KMP就是要解决指针回退的问题,如果下图所示。初始指针j指向前缀末尾,指针i指向后缀末尾,这里i也代表着当前遍历的位置。是为了理解而加上去的!

2024-03-21 01:27:55 430

原创 哈希表+滑动窗口 总结

由于字符串只包含 26 个小写字母,因此我们可以维护一个长度为 26 的频次数组 table,先遍历记录字符串 s 中字符出现的频次,然后遍历字符串 t,减去 table 中对应的频次,如果出现 table[i] < 0,则说明 t 包含一个不在 s 中的额外字符,返回 false即可。因为字符串 p 的异位词的长度一定与字符串 p 的长度相同,所以我们可以在字符串 s 中构造一个长度为与字符串 ppp 的长度相同的滑动窗口,并在滑动中维护窗口中每种字母的数量;来添加元素,遇到重复的组合。

2024-02-25 23:44:38 701

原创 leetcode 二分法总结

因为左边界需要不断往左边靠拢,所以当target == nums[mid]的时候,有可能出现下图中第二行的情况,target = 7,但是不止一个7,有可能找到的是中间的7,此时我们需要将边界指针boundary继续向左移动。实际上,对于边界我们往往分开区间和闭区间(如下图,target = 8时,实际上我们要boundary -> nums[i] = 9,这是闭区间,即左边界就是boundary指向的位置,如果是开区间那么。接下来看升级版本,更进一步的应用!你必须设计并实现时间复杂度为。

2024-02-23 14:55:49 1608 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除