摘要:
环境是DOS系统的变量存储区,它保存于RAM中,是DOS系统保存重要信息以供批处理文件使用的场所。用户可以根据需要修正或改变它的信息。很多DOS参考书都忽略了它,但不管如何,用户都在自觉或不自觉地使用着它。 如何设置、查看环境 造访环境有两种方法,一种是通过SET命令来查看,另一种是使用DOS系统的DEBUG命令来查看计算机的RAM。SET命令直观、方便,大多数用户都使用它来设置和查看DOS环境。 1.用SET命令 SET命令可用于设置、修改和查看环境变量,键入无参数的SET命令可显示当前环境设置。这些设置一般包括COMSPEC和PATH环境变量,MS-DOS用它们在磁盘上寻找程序。另... 阅读全文
摘要:
系统属性/高级/环境变量/Path/编辑/加上%systemroot%;%systemroot%/system32;装了JAVA的,刚刚开始配置环境变量的时候可能不小心弄错了。就造成DOS不能用了。 DOS命令很强大,我们可以用它来做很多事情。但是,有些时候在命令行窗口中打入一些DOS命令时,会提示“‘xxx’不是内部或外部命令,也不是可运行的程序或批处理文件。”这可能由以下几个原因造成的: 有可能安装的系统是精简版,cmd功能被去掉了,看看C:/windows/system32下有没有那些DOS命令,如果有但使不了,那就有可能是环境变量的问题,看看path里有没有%SystemRoot%;% 阅读全文
摘要:
1 void get_next(char b[], int *next) 2 { 3 int i = 0; 4 int j = -1; 5 next[i] = -1; 6 int len_b = strlen(b); 7 while(i = len_b)41... 阅读全文
摘要:
BM算法和KMP算法一样,也是构造一个辅助的模式函数来加速匹配的速度。和KMP的模式函数相比BM的模式函数更加的简单:void make_next(const char p[], int next[]){ for(int i = 0; i #include #include /* 辅助... 阅读全文
摘要:
这种由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现的改进的模式匹配算法简称为KMP算法。大概学过信息学的都知道,是个比较难理解的算法,今天特把它搞个彻彻底底明明白白。注意到这是一个改进的算法,所以有必要把原来的模式匹配算法拿出来,其实理解的关键就在这里,一般的匹配算法:个人理... 阅读全文
摘要:
Note:阅读本文需要有KMP算法基础AC自动机是用来处理多串匹配问题的,即给你很多串,再给你一篇文章,让你在文章中找这些串是否出现过,在哪出现。也许你考虑过AC自动机名字的含义,我也有过同样的想法。你现在已经知道KMP了,他之所以叫做KMP,是因为这个算法是由Knuth、Morris、Pratt三... 阅读全文
摘要:
没有加什么模板之类的,全用的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)... 阅读全文
摘要:
对 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 阅读全文
摘要:
Hash函数在多个领域均有应用,而在数字签名和数据库实现时又用的最多,比如基于hash的索引,是最好的单值查找索引;同时,在当前数据爆炸的场景下,执行相似item的查找时,在内存受限时,均可以采取LSH(local sensitive hash)进行分段处理。具体用途很多,不赘述,下面介绍一些常用的... 阅读全文
摘要:
最常用的两个: 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... 阅读全文
摘要:
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... 阅读全文
摘要:
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){... 阅读全文
摘要:
1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 #define maxsize 1005 8 //建立一个结构体 9 struct hp 10 { 11 ... 阅读全文
摘要:
大端:多字节值的大端存储在该值的起始位置;(老大站排头为大)小端:多字节值的小端存储在该值的起始位置;(老小站排头为小)例如16bit整数:0x0102,其中01即为多字节值的大端,02即为多字节值的小端。在网络中传输的都是大端序,但具体到某台主机CPU的实现,则有可能是大端序也可能是小端序。一般X... 阅读全文
摘要:
如何用栈实现递归与非递归的转换一.为什么要学习递归与非递归的转换的实现方法?1)并不是每一门语言都支持递归的.2)有助于理解递归的本质.3)有助于理解栈,树等数据结构.二.递归与非递归转换的原理.递归与非递归的转换基于以下的原理:所有的递归程序都可以用树结构表示出来.需要说明的是,这个"原理"并没有经过严格的数学证明,只是我的一个猜想,不过在至少在我遇到的例子中是适用的.学习过树结构的人都知道,有三种方法可以遍历树:前序,中序,后序.理解这三种遍历方式的递归和非递归的表达方式是能够正确实现转换的关键之处,所以我们先来谈谈这个.需要说明的是,这里以特殊的二叉树来说明,不过大多 阅读全文