昨天做了leetcode里的 Longest Palindromic Substring ,一开始用动态规划O(N^2),不管怎么改都超时了。。。于是在大神的帮助下,找到了传说中的Manacher算法,居然能在O(n)内求出来,瞬间给跪了。
本屌认为,这个算法主要是充分的利用了以前的匹配的结果,来起到了降低时间复杂度的作用,这点跟KMP算是有点类似。在预处理时有个小技巧就是将第0,1为设...
分类:
其他好文 时间:
2014-06-20 12:15:22
阅读次数:
305
给定n个A和2n个B,用这些字符拼成一个字符串,要求这个串的所有前缀和后缀B的个数始终不少于A。
(一个字符串的前缀是只从开头到某个位置为止的子串,后缀是只从某个位置到结尾的子串)。 输入格式
多组数据,每组数据只有一行,包含一个正整数n。(n<=10^17)。 输出格式 每组数据输出一行,最终结果...
分类:
其他好文 时间:
2014-06-11 07:49:31
阅读次数:
239
其实做起来会感觉很简单,需要注意的是要考虑效率的问题,毕竟可能是很长的字符串数组,所以可以考虑选取所有字符串中最短的那个来首先进行比较,因为最长公共子串肯定不会大于其长度,这样避免了字符串之间长度差异很大造成的效率损失,然后每次比较之后最长公共子串的长度也永远不会大于最短的那个字符串,只会不变或相等,只要遍历字符串数组,挨个对比、更改最短公共字符串记录即可,code如下:...
分类:
其他好文 时间:
2014-06-11 06:58:55
阅读次数:
226
题目:Given a string s, partition s such that every substring of the partition is a palindrome. Return all possible palindrome partitioning of s.
解题思路:
回文划分,题目意思是给一个字符串,找出将字符串划分为一系列回文子串的各种可能组合。例如,一个子串“aab“,你需要返回["aa","b"],["a","a","b"]。这个题目的解法也是非常的典型---循环加递归,...
分类:
其他好文 时间:
2014-06-09 23:24:11
阅读次数:
256
题目:
给定n个A和2n个B,用这些字符拼成一个字符串,要求这个串的所有前缀和后缀B的个数始终不少于A。
(一个字符串的前缀是只从开头到某个位置为止的子串,后缀是只从某个位置到结尾的子串)。
输入格式
多组数据,每组数据只有一行,包含一个正整数n。(n
输出格式
每组数据输出一行,最终结果对99991取余数的结果。
分析:
简单的想法是建...
分类:
其他好文 时间:
2014-06-08 17:15:21
阅读次数:
171
JS自带函数concat将两个或多个字符的文本组合起来,返回一个新的字符串。var a =
"hello";var b = ",world";var c = a.concat(b);alert(c);//c =
"hello,world"indexOf返回字符串中一个子串第一处出现的索引(从左到右搜...
分类:
Web程序 时间:
2014-06-08 06:30:26
阅读次数:
191
不使用C程序已有函数,模拟C++的strstr函数
strstr函数--输出主串的子串及其后面的所有字符...
分类:
编程语言 时间:
2014-06-08 02:14:50
阅读次数:
192
POJ3080,题目链接http://poj.org/problem?id=3080题意:就是求m个长度为60的字符串的最长连续公共子串,2=3的所有连续子串找出来,然后由短到长查看所有主串是否有该子串。2.如果发现一个公共子串,那么就开始找长度+1的公共子串;如果指定长度的所有子串都找不出一条是共...
分类:
其他好文 时间:
2014-06-04 16:30:49
阅读次数:
246
求最长合法匹配的长度,这道题可以用一维动态规划逆向求解。假设输入括号表达式为String s,维护一个长度为s.length的一维数组dp[],数组元素初始化为0。 dp[i]表示从s[i]到s[s.length - 1]包含s[i]的最长的有效匹配括号子串长度。则存在如下关系:...
分类:
其他好文 时间:
2014-06-04 13:52:03
阅读次数:
279
题目:
给定一个字符串S,一个字符串数组L,找出S中所有这样的子串起点,该子串包含L中的所有元素。
说明:
1)L中存在重复的元素
2)子串不允许间断,即子串从开始到找全L中的所有元素之前,子串中不允许包含L以外的东西,而且,即使当前处理的子串是L中含有的,但是前面已经找够了,这个多余的也是不合法的,若此时还有L中的其他元素没找到,从这个起点开始也是不成功的。
3)L在S中出现的...
分类:
其他好文 时间:
2014-06-01 12:54:53
阅读次数:
192