
字符串
文章平均质量分 52
chp的博客
这个作者很懒,什么都没留下…
展开
-
字符串匹配
kmp,hash,字符串原创 2022-06-15 09:24:41 · 112 阅读 · 0 评论 -
Trie 树(字典树、前缀树)
Trie树原创 2022-06-14 09:03:02 · 297 阅读 · 0 评论 -
Leetcode395. 至少有K个重复字符的最长子串
题目链接找到给定字符串(由小写字符组成)中的最长子串 T , 要求 T 中的每一字符出现次数都不少于 k 。输出 T 的长度。示例 1:输入:s = "aaabb", k = 3输出:3最长子串为 "aaa" ,其中 'a' 重复了 3 次。示例 2:输入:s = "ababbc", k = 2输出:5最长子串为 "ababb" ,其中 'a' 重复了 2 次, 'b' 重复了 3 次。代码如下:class Solution {public: int原创 2021-02-27 10:10:00 · 131 阅读 · 0 评论 -
leetcode 5. 最长回文子串
题目链接给你一个字符串 s,找到 s 中最长的回文子串。 示例 1:输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。示例 2:输入:s = "cbbd"输出:"bb"示例 3:输入:s = "a"输出:"a"示例 4:输入:s = "ac"输出:"a" 提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成数据范围1e3,用时间复杂度的O(n2)O(n^2)O(n2原创 2021-02-24 09:28:46 · 101 阅读 · 0 评论 -
最长回文子串的五种求法(暴力、中点扩散、DP、hash+二分、Manacher)
最长回文子串暴力枚举法(O(n3)O(n^3)O(n3))中点扩散算法(O(n2)O(n^2)O(n2))动态规划(O(n2)O(n^2)O(n2))hash+二分(O(nlog n)O(nlog\ n)O(nlog n))暴力枚举法(O(n3)O(n^3)O(n3))暴力大法好,枚举字符串的始位置和末位值,再判断始位置和末位值之间的字符串是否为回文串,这种做法的时间复杂度为O(n^3)。中点扩散算法(O(n2)O(n^2)O(n2))由于回文串是对称的,所以我们可以枚举所原创 2021-02-23 17:02:43 · 24905 阅读 · 0 评论 -
牛客18386 字符串(尺取法)
题目链接分析: 用尺取法来做这道题,有点类似双指针算法,两个指针i,j之间维护的区间内恰好满足每个最短的26字母,每次有新字符读入时,若该字符未出现过,则标记数res++,若res==26,则记录下区间长度,比较选取最短的区间长度,时间复杂度为O(n)。O(n)。O(n)。代码如下:#include<cstdio>#include<algorithm>#include<cstrin原创 2021-01-28 12:53:05 · 187 阅读 · 0 评论 -
RGB Substring (easy version)
题目传送门分析:数据的范围较小,可直接遍历整个母串,记录下每次的最小值,选出最小值即可代码如下,比较容易看懂#include<cstdio>#include<algorithm>#include<cstring>#include<string>using namespace std;const int maxn=1e9;in...原创 2019-11-15 21:27:57 · 244 阅读 · 0 评论 -
数据结构——BF
#include<stdio.h>#include<string.h>using namespace std;const int maxn=1e5+10;int la;int lb;int ant=0;char a[maxn];char b[maxn];int abc(int x){ for(int i=x;i<lb+x;i++) { an...原创 2019-11-05 16:05:46 · 154 阅读 · 0 评论 -
富豪凯匹配串
问题传送门有n个长度为m的文本串,每个串只含有’0’和’1’。接下来有Q次询问,每次给出一个长度为m的字符串,且只含有’0’,‘1’和’_’。如10_1_1。下划线可以匹配’0’或’1’。即10_1_1可以匹配101111,101101,100111,100101四种串。每次询问求出n个文本串中有多少个可以与当前询问的串匹配。输入描述:第一行输入n,m接下来n行,每行输入一个长度为m的01...原创 2019-10-16 23:25:12 · 247 阅读 · 0 评论