- 博客(5)
- 资源 (11)
- 收藏
- 关注
原创 sunday算法研究——超越kmp的字符串匹配
第一次听到Sunday算法,是大饼饼说的。在他图文并茂的解释中,我发现这个算法果然是一个又容易理解,效率又强过kmp和BM的算法。于是试着写了一个,果真是好东东,分享一下。转一些概念先:Sunday算法是Daniel M.Sunday于1990年提出的一种比BM算法搜索速度更快的算法。其核心思想是:在匹配过程中,模式串并不被要求一定要按从左向右进行比较还是从右向左进行比较,它在发现不匹
2009-10-26 15:13:00 12061 16
原创 联机算法求最大子序列和
一个无序的数组,找出相邻的任意个元素,使得其和最大。int max_subseq_sum(int *a,int N){ int i,sum=0,max=0; for(i=0;i<N;++i) { sum+=a[i]; if(sum<0) sum=0; else if(sum>max) max=sum; } return max;}
2009-10-15 19:37:00 4961 3
原创 DH应用-求余算法改进
DH算法里需要求(n^x)%p;其中p为大素数,n跟x都是大数。 那怎样求(n^x)%p呢?我有一篇文章里讲过思路,今天找出以前的代码,贴出来。 __int64 remod(__int64 x, __int64 y, __int64 N) //可以求出(x^y)%N求余{ statis++; __int64 tmp = 0; if (y==1) ret
2009-10-14 19:46:00 2136
原创 LCS_最大公共子串查找算法解析
最大公共子串算法可用动态规划来解。网上有篇是用一个一维数组(string,本质是一维)来记录匹配信息。效果还能让人满意,贴出代码与个人理解。 string lcs_search(string str1, string str2){ if (str1.length() < str2.length()) //保证str1为母串(较长的哪个串)
2009-10-13 17:31:00 4351 1
转载 .h和.cpp文件的区别
关于头文件和源文件的分别首先,我们可以将所有东西都放在一个.cpp文件内.然后编译器就将这个.cpp编译成.obj,obj是什么东西?就是编译单元了.一个程序,可以由一个编译单元组成,也可以有多个编译单元组成. 如果你不想让你的源代码变得很难阅读的话,就请使用多个编译单元吧.(一个函数不能放到两个编译单元里面,但两个以上就可以分别放在一个单元,也就是cpp里面)
2009-10-10 11:20:00 16212 6
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人