土法炼钢兴趣小组的算法知识备份

字符串匹配算法选型索引

文章导航

分类入口
algorithms
标签入口
#string-matching#kmp#boyer-moore#rabin-karp#aho-corasick#simd#pattern-matching#index

目录

「在主串里找模式串」是编译器、搜索引擎、IDS、日志管道里的高频问题。教材常按 KMP、BM 顺序讲;工程里还要考虑多模式、流式、SIMD、模糊纠错。本页按场景串联本站文章,方便从 Google 搜索「字符串匹配算法」「KMP」「BM 算法」直达正确深度文。


一、按场景选型

场景 推荐算法 / 结构 本站文章
单模式、最坏 \(O(n)\) 保证 KMP KMP 与 Boyer-Moore
单模式、文本随机、追求平均最快 Boyer-Moore(BM) KMP 与 Boyer-Moore
多模式、文本扫一遍 Aho-Corasick AC 自动机
多模式哈希、实现简单 Rabin-Karp / 滚动哈希 字符串哈希
静态文本、大量不同查询 后缀数组 / FM-index 后缀数组BWT/FM-index
超长文本 SIMD 扫描 SIMD 字符串 SIMD 字符串处理
拼写纠错、编辑距离 DP / 模糊匹配 编辑距离
正则引擎 NFA/DFA、ReDoS 正则与性能

二、单模式:KMP vs Boyer-Moore vs Rabin-Karp

深度实现与对比见 KMP 与 Boyer-Moore 详解(含 Sunday 变体与代码)。

Rabin-Karp 工程篇 含与 KMP/BM 的 benchmark 表。


三、推荐阅读路径

面试 / 基础:暴力 → KMP/BM滚动哈希

工程 / 日志 / 安全AC 自动机SIMD 字符串

生物信息 / 静态索引后缀数组BWT/FM-index

自然语言 / 纠错编辑距离Unicode 文本陷阱


四、与分布式系统的交叉


返回 算法工程索引

同主题继续阅读

把当前热点继续串成多页阅读,而不是停在单篇消费。

2026-04-22 · algorithms

算法工程索引

汇总本站算法工程相关文章,覆盖排序、哈希、树、字符串、近似数据结构、SIMD、随机化与编译器相关算法。

2026-04-10 · algorithms

排序算法专题:从 TimSort 到并行排序

把 TimSort、pdqsort、radix sort、external sort、parallel sort 与 benchmark 串成一条阅读路径。先读哪篇、什么时候选哪种排序,这一页讲清。

2025-11-13 · algorithms

SIMD 加速字符串查找(strchr / strstr)系统指南

面向工程实践的SIMD字符串查找优化完全指南:SSE2/AVX2/AVX-512并行比较原理,位掩码技巧,跨块与页边界安全处理,strchr/strstr高性能实现,包含完整代码示例和性能陷阱分析


By .