字符串匹配之Horspool算法
来源:互联网 发布:jdbc示例数据库 编辑:程序博客网 时间:2024/05/29 14:19
基于后缀,应该算是Boyer-Moore算法的简化算法,详情——嗯——依然参阅《柔性字符串匹配》这本好书(因为我肯定没法讲得比他清楚)。
我的实现如下:
- template<class OutputFunctionType >
- size_t Search_Horspool(const char* Str, const char* T, OutputFunctionType out)
- //在Str中寻找T,返回T出现的总次数
- //使用 out 处理每个T出现的点
- {
- int dictionary[128]; // 移动表
- size_t occurence=0; // T 出现的次数
- int len_T=0; // T 的长度
- int len_S=0; // Str 的长度
- int i,j; // 会用到的...
- //初始化:
- for(i=0;T[i];++i)
- ;
- len_T=i;
- for(i=0;Str[i];++i)
- ;
- len_S=i;
- for(i=0; i<128; ++i)
- dictionary[i]=len_T;
- for(i=0; i<len_T ;++i){
- dictionary[T[i]] = len_T - i -1 ;
- }
- //匹配:
- for(i=0; i<len_S-len_T+1; ++i){
- for(j=len_T-1; j>=0; --j){
- if(T[j]!=Str[i+j]){
- i+=dictionary[T[j]];
- break;
- } else if(j==0) {
- OutputFunction(i);
- ++occurence;
- }
- }
- }
- return occurence;
- }
- 字符串匹配之Horspool算法
- 字符串匹配之horspool算法
- 字符串匹配算法 之 (Horspool )Boyer-Moore-Horspool
- Horspool字符串匹配算法
- Horspool字符串匹配算法
- Horspool字符串匹配算法
- HorsPool字符串匹配算法
- 字符串匹配算法horspool
- Horspool(字符串匹配)算法
- 字符串匹配之horspool算法(简化的BM算法)
- 字符串模式匹配之Brute force、KMP、Horspool算法
- 【算法学习】horspool查找匹配字符串
- 字符串匹配 — Horspool
- 快速字符串模糊匹配--基于Horspool的模糊匹配算法
- sunday、kmp、 bm、 horspool字符串匹配算法 code
- 字符串匹配---KMP,Horspool,Boyer-Moore和Sunday等算法
- 字符串模式匹配算法——BM、Horspool、Sunday、KMP、KR、AC算法一网打尽
- 算法设计与分析基础-7.2、字符串匹配中的输入增强技术,Horspool算法
- 字符串匹配之Shift And算法
- 有关汉字系统的关键技术/纯汇编显示中文/汉字显示/Nasm源码
- C#基础概念二十五问
- 一个CSS+DIV的demo
- 常用eclipse 插件
- 字符串匹配之Horspool算法
- MODEM技术术语解释
- Java Desktop开发资源
- Visual C++ 中stdafx.h
- 一个简单的登录页面示例
- “快速流畅、百毒不侵”360安全浏览器正式推出
- weblogic9.0--JDK的问题
- Logo设计潮流之非主流风格
- J2EE WEB应用架构分析