4.字符串
文章平均质量分 76
Leetcode 字符串
pig不会cv
这个作者很懒,什么都没留下…
展开
-
4.7重复的子字符串(LC_459-E)
给定一个非空的字符串s,检查是否可以通过由它的一个子串重复多次构成。s = "abab"true可由子串 "ab" 重复两次构成。s = "aba"falsetrue可由子串 "abc" 重复四次构成。(或子串 "abcabc" 重复两次构成。所以判断字符串s是否由重复子串组成,只要两个s拼接在一起,里面还出现一个s的话,就说明是由重复子串组成。当然,我们在判断 s + s 拼接的字符串里是否出现一个s的的时候,,这样避免在s+s中搜索出原来的s,我们要搜索的是中间拼接出来的s。原创 2024-08-23 13:56:24 · 353 阅读 · 0 评论 -
4.6找出字符串中第一个匹配的下标(还是不太会KMP)
算法:用了KMP算法节省时间、空间复杂度。不过代码还是不太会,只能解读正确代码。原创 2023-11-03 15:16:12 · 51 阅读 · 0 评论 -
KMP算法(学会写前缀表的代码)
记录下标i之前(包括i)的字符串中,有多大长度的相同前缀后缀。原创 2023-11-03 11:51:07 · 238 阅读 · 0 评论 -
4.5左旋字符串(LC182动态口令-E)
注意:password[:target]不包括索引target,password[target:]包括索引target。原创 2023-11-02 09:14:54 · 45 阅读 · 0 评论 -
4.4 路径加密(LC122-E)
字符串不能改,必须转成列表,才能修改。原创 2023-11-02 08:07:21 · 44 阅读 · 0 评论 -
4.3反转字符串中的单词(LC151-M)
由于python中,字符串不可变,必须转换成列表才能操作,所以空间复杂度肯定没法是O(1)split()函数是Python中字符串对象的一个方法,用于并一个包含拆分后的子字符串的。separatormaxsplitmaxsplit+1`split()`函数的时间复杂度和空间复杂度如下:时间复杂度: - 在最坏情况下,当输入字符串的长度为 n 且不存在分隔符时,`split()`函数需要遍历整个字符串,将其每个字符都检查一遍。因此,时间复杂度为 O(n)。原创 2023-11-01 10:17:48 · 82 阅读 · 0 评论 -
4.2反转字符串2(LC541)
可以发现,这道题是每2k个字符,反转其中前k个字符那遍历时对前k个进行操作即可。原创 2023-10-31 10:41:02 · 57 阅读 · 0 评论 -
4.1 反转字符串(LC344-E)
一个reverse函数就能直接解决。但是这里推荐可以发现,这里也是,两个指针交换数值,不断靠近、读数、交换数值。原创 2023-10-30 11:05:33 · 46 阅读 · 0 评论