- 博客(11)
- 资源 (6)
- 收藏
- 关注
原创 简单正则表达式匹配
编写一个简单的支持正则表达式的字符串匹配函数,简单的正则表达式如下:字符 含义c 匹配字符c. 匹配任意一个字符* 若一个字符后紧跟*,则匹配0个或多个此字符函数原型如下,参数regexp是待
2012-09-30 14:17:19 1797
原创 非递归求N皇后问题
实现代码:#include #include #include #include using namespace std;bool verify(int *Q, int index);void outPut(int *Q, int len);int main(){ int n; while(scanf("%d", &n) != EOF) { int cnt =
2012-09-28 01:28:50 2400 1
原创 求n个无序数的前k个小的数
用一个大根堆只保存k个数,每次读一个数与大根堆的堆顶比较,若大直接抛弃,若小,则替换堆顶,然后调整堆最后遍历一遍最后求出的就是最小的k个数。#include #include #include using namespace std;const int maxn = 20;int array[maxn], k;inline int randint(int low, int
2012-09-28 00:12:55 2191
原创 二叉树的非递归 前序,中序,后序遍历
#include #include using namespace std;struct node{ int num; node *leftChild, *rightChild; node() { num = -1; leftChild = rightChild = NULL; }};void preOrder(node *root);void preOrder
2012-09-21 02:38:58 980
原创 hdoj 3065
题目大意:统计一些大写字母不重复的单词在文本中出现的次数。解题思路:AC自动机。。。水题。注意重复出现的单词,比如AAA表示单词AA出现了2次#include #include #include #include using namespace std;const int kind = 26;const int maxn = 1001;const int maxs =
2012-09-17 03:33:48 827
原创 hdoj 2222 Keywords Search
题目大意:给出一组单词,和一个文本,要你统计有多少个单词出现在这个文本中。解题思路:简单的AC自动机入门,先把单词建立单词树,注意单词有重复出现,然后构建失败指针。最后用文本在自动机上做查询统计个数#include #include #include #include using namespace std;const int maxn = 55;const int
2012-09-17 02:29:54 764
原创 poj 2184 Cow Exhibition
题目大意:给定一组成员,每个成员包含ts,tf两个值,两者都有负值,要你从这组成员中选出一些成员,保证ts的和不为负数,tf的和也不为负数,并且ts的和与tf的和最大。解题思路:背包问题,把ts看做容量,tf看做价值,由于有负值,所以把最小负值平移到原点。当ts为正数时,由于要利用到上次求到的结果,并且每个物品只能选一次,所以,按照从大到小扫描当ts为负值时,从小到大扫描#incl
2012-09-10 01:12:18 949
转载 poj 1717 Dominoes
转自http://hi.baidu.com/flabbyan/item/5383903d55235f647d034b70题目大意:给成一组多米诺牌,每个多米诺牌由上面和下面两组数组成,现要求可以翻动颠倒上下,使得多米诺上边的点数和减去下边的点数和的绝对值最小解题思路:之前想的一个。。。。用一个dp[i[0]表示第i个没颠倒的前i个牌和之差,dp[i][0]= dp[i-1][1
2012-09-09 18:12:54 1742 1
原创 poj 2750 Potted Flower
题目大意:给定一组数,这组数是首尾相连的,然后每次都修改这个数环的某个数值,求修改过后的这个环的最大连续子序列和,并且最大连续子序列长度不能等于整个环长。解题思路:我们可以把环从任意一点断开,我们取从数组0位置断开拉直组成0,1,。。。。,n - 1,N个数。当这个组数总和就是为最大连续子序列和时,满足条件的长度不等于整个环长的子序列和则为总和减去最小连续子序列。否则,最大连续子序列为
2012-09-08 12:34:36 799
原创 poj 3633 Costume Party
题目大意:就是给一组数,求有多少对数的和不超过给定值解题思路:水题。。。。。用来练练自己手写快速排序的。。。。先把数按从小到大排列,然后用两个序号low,high分别指向第0个数和第n-1个数当array[low] + array[high] low和high之间的数都能和low位置的数组成对然后low++当array[low] + array[high] > s时hi
2012-09-04 00:08:15 1008
[现代编译原理C语言描述
2012-08-13
UNIX环境高级编程第二版.
2011-12-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人