雕刻时光

just do it……nothing impossible
随笔 - 547, 文章 - 0, 评论 - 82, 阅读 - 86万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

随笔分类 -  字符串相关

摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1251又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来节约存储空间,最大限度地减少无谓的字符串比较,查询效率比哈希表高。字典树与字典很相似,当你要查一个单词是不是在字典树中,首先看单词的第一个字母是不是在字典的第一层,如果不在,说明字典树里没有该单词,如果在就在该字母的孩子节点里找是不是有单词的第二个字母,没有说明没有该单词,有的话用同样的方法继续查找.字典 阅读全文

posted @ 2014-03-17 13:06 huhuuu 阅读(231) 评论(0) 推荐(0) 编辑

摘要:回文字符串时间限制:3000ms | 内存限制:65535KB难度:4描述所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba"。当然,我们给你的问题不会再简单到判断一个字符串是不是回文字符串。现在要求你,给你一个字符串,可在任意位置添加字符,最少再添加几个字符,可以使这个字符串成为回文字符串。输入第一行给出整数N(0#include#includeusing namespace std;char ss[5099];char ss2[5099];short dp[5099][5099];int max(int a,int b){ if(a> 阅读全文

posted @ 2013-10-07 17:13 huhuuu 阅读(1192) 评论(0) 推荐(0) 编辑

摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3068abcba 5aab 2在一个字符串里寻找一条最长的回文串比较直接的想法是枚举中心点 然后像两边扩散,但这样不仅要考虑最长子串的奇数偶数情况,而且时间复杂度会很高,因为会有比较多的重复计算分析 aaaab, abcba变成 #a#a#a#a#b# , #a#b#c#b#a#就都成了奇数子串现在再用一个数组P保存到该点的最长回文#a#a#a#a#b#12345432131 if( mx > i ) p[i] = min( p[2*id-i], mx-i );这一句减少了重复计算过程... 阅读全文

posted @ 2013-09-03 09:02 huhuuu 阅读(318) 评论(0) 推荐(0) 编辑

摘要:给你一个字符串,它是由某个字符串不断自我连接形成的。 但是这个字符串是不确定的,现在只想知道它的最短长度是多少Sample Input8cabcabcaSample Output3用到了kmp里的next自身匹配View Code #include<stdio.h>#include<math.h>char ss[1000009];int next[1000009];void getnext(char *s,int next[]){ int i,j; i=0;j=-1; next[0]=-1; while(s[i]) { if(j == -1||s[i... 阅读全文

posted @ 2012-02-04 10:40 huhuuu 阅读(983) 评论(0) 推荐(0) 编辑

摘要:先写个暴力的,明天写个hash,或是后缀数组View Code #include<stdio.h>#include<iostream>#include<string.h>#include<queue>#include<stack>#include<set>#include<algorithm>using namespace std;char ss[30009];char cc[30009];int main(){ int n; while(scanf("%d",&n)!=EOF) { 阅读全文

posted @ 2011-08-05 22:26 huhuuu 阅读(265) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示