上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 15 下一页
摘要: Note:阅读本文需要有KMP算法基础AC自动机是用来处理多串匹配问题的,即给你很多串,再给你一篇文章,让你在文章中找这些串是否出现过,在哪出现。也许你考虑过AC自动机名字的含义,我也有过同样的想法。你现在已经知道KMP了,他之所以叫做KMP,是因为这个算法是由Knuth、Morris、Pratt三... 阅读全文
posted @ 2012-08-19 09:08 山路水桥 阅读(370) 评论(0) 推荐(0) 编辑
摘要: 没有加什么模板之类的,全用的int型,下标有的从0开始有的从1开始1.插入 1 #include 2 #include 3 #define N 1005 4 using namespace std; 5 int n, a[N]; 6 void InsertSort(int a[], int n)... 阅读全文
posted @ 2012-08-19 09:01 山路水桥 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 对 32 位和 64 位编译器, Microsoft Visual C++ 识别在下表中显示的类型。注意以下类型还具有无符号形式:int(unsignedint)__int8(unsigned__int8)__int16(unsigned__int16)__int32(unsigned__int32)__int64(unsigned__int64)short(unsignedshort)long(unsignedlong)longlong(unsignedlonglong)类型名称字节其他名称值的范围int4签名-2,147,483,648 到 2,147,483,647unsigned in 阅读全文
posted @ 2012-08-19 08:47 山路水桥 阅读(220) 评论(0) 推荐(0) 编辑
摘要: Hash函数在多个领域均有应用,而在数字签名和数据库实现时又用的最多,比如基于hash的索引,是最好的单值查找索引;同时,在当前数据爆炸的场景下,执行相似item的查找时,在内存受限时,均可以采取LSH(local sensitive hash)进行分段处理。具体用途很多,不赘述,下面介绍一些常用的... 阅读全文
posted @ 2012-08-19 08:45 山路水桥 阅读(2276) 评论(1) 推荐(0) 编辑
摘要: 最常用的两个: 1 2 const int MAXN = 1000003; 3 4 常用1 5 1 SDBMHash 6 int SDBMHash(char *str) 7 { 8 int hash = 0; 9 while (*str) hash = (*s... 阅读全文
posted @ 2012-08-19 08:44 山路水桥 阅读(648) 评论(0) 推荐(0) 编辑
摘要: 1(最长公共子串(注意和最长公共子序列区别))两个字符串str1和str2,长度分别为(l1,l2)dp[i][j]表示以两个字符串分别以第i和第j个字符结尾所能达到的公共子序列的长度,由于下面涉及到i-1和j-1,那么这个时候我们一般从i=1和j=1开始到i 0且j> 0且ch1[i-1]= ch... 阅读全文
posted @ 2012-08-19 08:35 山路水桥 阅读(10002) 评论(0) 推荐(1) 编辑
摘要: 1 #include 2 #include 3 #include 4 using namespace std; 5 //字典树的数据结构 6 struct Trie{ 7 Trie *child[26];//这里数组的大小看是小写字母还是数字还是都有 8 int num; 9 Trie(){//初始化10 num = 0;11 memset(child , 0 , sizeof(child));12 }13 };14 Trie *root;15 //字典树的构建16 void Tree_Insert(char *str){... 阅读全文
posted @ 2012-08-19 08:33 山路水桥 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 #define maxsize 1005 8 //建立一个结构体 9 struct hp 10 { 11 ... 阅读全文
posted @ 2012-08-19 08:25 山路水桥 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 大端:多字节值的大端存储在该值的起始位置;(老大站排头为大)小端:多字节值的小端存储在该值的起始位置;(老小站排头为小)例如16bit整数:0x0102,其中01即为多字节值的大端,02即为多字节值的小端。在网络中传输的都是大端序,但具体到某台主机CPU的实现,则有可能是大端序也可能是小端序。一般X... 阅读全文
posted @ 2012-08-19 08:12 山路水桥 阅读(3000) 评论(0) 推荐(0) 编辑
摘要: 如何用栈实现递归与非递归的转换一.为什么要学习递归与非递归的转换的实现方法?1)并不是每一门语言都支持递归的.2)有助于理解递归的本质.3)有助于理解栈,树等数据结构.二.递归与非递归转换的原理.递归与非递归的转换基于以下的原理:所有的递归程序都可以用树结构表示出来.需要说明的是,这个"原理"并没有经过严格的数学证明,只是我的一个猜想,不过在至少在我遇到的例子中是适用的.学习过树结构的人都知道,有三种方法可以遍历树:前序,中序,后序.理解这三种遍历方式的递归和非递归的表达方式是能够正确实现转换的关键之处,所以我们先来谈谈这个.需要说明的是,这里以特殊的二叉树来说明,不过大多 阅读全文
posted @ 2012-08-19 00:26 山路水桥 阅读(646) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 15 下一页