2015年7月17日

sort与qsort

摘要: 1.qsort函数:原型:void qsort(void *base, int nelem, int width, int (*fcmp)(const void *,const void *));功能:使用快速排序例程进行排序参 数:1 待排序数组首地址2 数组中待排序元素数量3 各元素的占用空间大... 阅读全文

posted @ 2015-07-17 09:32 小松song 阅读(155) 评论(0) 推荐(0)

并查集模板

摘要: 再一次复习了并查集。。。解析什么的代码已经够详细了。。。#include#include#include#include#include#include#includeusing namespace std;#define maxn 10005000int pre[maxn],Rank[maxn];... 阅读全文

posted @ 2015-07-17 09:27 小松song 阅读(96) 评论(0) 推荐(0)

Trie树模版

摘要: Trie 树 中文名叫字典树,可以用来存放n个单词,并且找出某个前缀的数量,或者找出某个单词的数量。其实也有其他的应用,比如统计有多少个不同的字符串等等。字典树分为一般分为两个部分,一个是创建字典树,还一个是find函数,find函数的写法随着题目要求可以灵活多变的!首先 要先定义出数据结构。1 ... 阅读全文

posted @ 2015-07-17 09:16 小松song 阅读(136) 评论(0) 推荐(0)

2015年7月16日

扩展KMP算法

摘要: 扩展KMP,用于求s的后缀的最长前缀。用extand数组表示第i个后缀的最长前缀的字符个数。注意几点:1.next数组是对T的 2.extand数组是对S的 3.应用:回文,重复串等代码如下: 1 #include 2 #include 3 #include 4 using... 阅读全文

posted @ 2015-07-16 21:43 小松song 阅读(151) 评论(0) 推荐(0)

HDU 4300 (扩展KMP或KMP)

摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4300题意:说实话,看半天题目,愣是没看懂,百度题意才看懂,大概意思就是:第一个串串为匹配串,第i个代表字母顺序中的第i个,比如第一个是q,那么,q就代表a。第二个串是密文+明文,密文全部都有,但明文可能... 阅读全文

posted @ 2015-07-16 21:39 小松song 阅读(171) 评论(0) 推荐(0)

HDU 3336 (KMPnext数组的应用)

摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3336题意:求给定字符串的前缀出现次数的总和。题解:先求得next数组,从i=1开始遍历next数组,只要其值不为0,则让计数器加1,原因:next数组每出现不为0的时候,则代表有个一个前缀重复。 ... 阅读全文

posted @ 2015-07-16 16:24 小松song 阅读(134) 评论(0) 推荐(0)

HDU 2594 (KMPnext数组的应用)

摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2594题意:给两个字符串,求前面哪个字符串的前缀和后面字符串的后缀相同的最大串。题解:将两个字符串合成一个字符串,利用KMP里的next数组。next[len]即为所求。但要注意,长度必须小于两者小的那个... 阅读全文

posted @ 2015-07-16 14:41 小松song 阅读(118) 评论(0) 推荐(0)

POJ 3080 (暴力KMP解最长连续公共自序列)

摘要: 题目链接:http://poj.org/problem?id=3080题意:1.给m个长度为60的字符串,找他们连续最长自序列 2.如果给子序列长度小于3,则不输出。 3.相同长度,输出字典序小的题解:1.暴力KMP,枚举第一个字符串的所有自序列 2.相同长度的,用strcmp函数找... 阅读全文

posted @ 2015-07-16 13:10 小松song 阅读(137) 评论(0) 推荐(0)

2015年7月15日

POJ 2752 (KMP)

摘要: 题目链接:http://poj.org/problem?id=2752题意:给一个字符串,判断前缀和后缀是相同的位置,把这些位置从小到大输出出来。题解:通过字符串得到next数组,然后从next[len]开始。其值就是最后一个是相同前缀后缀的位置,然后,i=next[i],就是不断的向前找,就匹配了... 阅读全文

posted @ 2015-07-15 20:59 小松song 阅读(200) 评论(0) 推荐(0)

HDU 1358 (求最小循环节)

摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1358题意:大概就是说给你一个字符串,然后找出能够循环的子串,输出子串某位置以及循环节的个数。题解:用KMP算法得到next数组。然后,从i=2开始遍历,得到的i-next[i]为循环节大小。如果对于i能... 阅读全文

posted @ 2015-07-15 16:40 小松song 阅读(202) 评论(0) 推荐(0)

导航