字符串
字符串是由字符组成的有限序列,在计算机科学和 OI 竞赛中是极为常见的数据类型。由于字符串的独特性质,衍生出了众多专门用于处理字符串的算法和数据结构。
KMP 算法(Knuth - Morris - Pratt 算法)通过对模式串进行预处理,构建部分匹配表,从而能够在文本串中快速查找模式串,极大地提高了字符串匹配的效率。
后缀数组则是将字符串的所有后缀按照字典序排序,利用后缀数组可以轻松解决如最长公共子串、字符串排名等问题。
AC 自动机(Aho - Corasick 自动机)是一种多模式串匹配算法,它基于 Trie 树和失败指针,能够在一次扫描中同时查找多个模式串在文本串中的出现位置,在文本搜索、生物信息学等领域应用广泛。
字符串处理算法在文本处理、信息检索、密码学等实际应用中发挥着重要作用,是 OI 竞赛中重要的知识模块。