July西电讲座2014.09第一部分、面试–笔试面试考什么–解决笔试面试题的常用算法–常用算法的时间复杂度–O(N)时间复杂度内能解决的问题第二部分、算法–如何学习算法循序渐进(KMP)相互串联(以Trie树、后缀树,贪心、动态规划为例)追本溯源(二叉树、红黑树、2-3-4树、B树?.
分类:
编程语言 时间:
2015-02-20 00:22:50
阅读次数:
376
题目链接:http://poj.org/problem?id=3461
题目大意:
给你两个字符串p和s,求出p在s中出现的次数。
思路:p在s中KMP匹配,匹配成功,再从next[last]的位置匹配即可,因为允许出现的两次有重叠的部分。
//1208 KB 94 ms
#include
#include
#include
using namespace std;
in...
分类:
其他好文 时间:
2015-02-18 09:38:31
阅读次数:
181
题意:对于长度为len的字符串,我们知道它包含有len个前缀,现在要你统计出这个字符串里面,包含这些前缀的总个数。
思路:这题可以运用KMP的next数组来解,不过也太难想了吧orz,为了用next解这题想那么多也不算是很好的方法orz。
如何根据next数组的性质来解这道题,next数组的值是当前子串的后缀与前缀匹配的个数,所以根据这个性质把题待求的对象改一下:求每种字母作为结尾的串在原...
分类:
其他好文 时间:
2015-02-18 09:38:08
阅读次数:
179
题意:找出一个最大的公共子串,这个子串是一个字符串的尾串(tail substring ),同时是另外那个字符串的头串(head substring),是满足A+B的长度strlen(A+B)达到最小值,这里面要注意的一个问题是,谁做模式串P是不一定的,所以要分别比较不同字符串作为模式的KMP值。
思路:让两个串分别做模式串。看谁KMP的结束的时候匹配的字符字符的个数最多就好。
当然也可以把两...
分类:
其他好文 时间:
2015-02-18 09:37:27
阅读次数:
144
大致题意:
给出一个字符串str,求出str中存在多少子串,使得这些子串既是str的前缀,又是str的后缀。从小到大依次输出这些子串的长度。
next的简单运用,递归打印next的值就好
//Memory: 3656 KB Time: 141 MS
#include
#include
#include
#define maxn 400100
using namespace st...
分类:
其他好文 时间:
2015-02-18 09:37:09
阅读次数:
191
题意:给你n个的串,求出它们的最长公共子串,如果不存在这个子串,则输出“IDENTITY LOST”,如果存在多个最长公共子串,则输出字典序最小的那一个。
思路:二分枚举最长公共子串的长度,然后再枚举此长度的所有子串,找出字典序最小的解(不用二分直接暴力也能过)//400 KB 125 ms
#include
#include
#include
#include
using namespace...
分类:
其他好文 时间:
2015-02-17 22:26:17
阅读次数:
203
大致题意:
就是求k个长度为60的字符串的最长连续公共子串,2
规定:
1、 最长公共串长度小于3不输出
2、 若出现等长的最长的子串,则输出字典序最小的串
思路:和POJ-3450-Corporate Identity一样二分+枚举,但是直接暴力也0ms
//192 KB 0 ms 题目太水,我就把POJ3450的代码改了几句话
#includ...
分类:
其他好文 时间:
2015-02-17 22:25:14
阅读次数:
242
题意:n个字符的字符串,从第二个字符开始遍历。如果从第一个字符到当前字符是有循环的,那么输出当前的位置和最大循环次数。两组数据之间输出一个空格。
所以我们需要先解决如何算出(1...x)串的最大循环次数,再遍历就ok
所以如何找到最小循环节,如果(1...x)有循环x-next[x]就是循环节,可以在纸上画画,从前往后可以用“1...x-next[x]”这串字符推出整个串。而且这是最小循环节,...
分类:
编程语言 时间:
2015-02-17 22:24:27
阅读次数:
218
题意:给定一个字符串,让你求出他最多由几个相同的连续子串连接而成。
和上一篇一样,上一题的弱化,不说了
代码(直接套了上一题)
//5060 KB 110 ms C++
#include
#include
#include
#define maxn 1000100
using namespace std;
int len;
char str[maxn];
int next[maxn];
vo...
分类:
其他好文 时间:
2015-02-17 21:06:09
阅读次数:
150
------------------------------------------------------------------------------------------------------------------------------------------------------...
分类:
编程语言 时间:
2015-02-16 11:29:52
阅读次数:
176