Aan*_*Aan 3 c++ string algorithm pattern-matching string-matching
有许多字符串匹配算法可用于在大文本中查找模式(字符串),如Boyer-Moore,Aho-Corasick等.
std::search在C++中应用哪种字符串匹配算法来实现函数?
tem*_*def 10
根据C++ 03 ISO标准,§25.1.9/ 3,复杂性std::search是
复杂性:对应谓词的最多(last1 - first1)*(last2 - first2)应用程序
这是实现此算法的唯一要求.ISO规范没有规定这里应该使用哪种算法,而且它完全依赖于实现.这些时间限制允许使用朴素序列搜索算法,Knuth-Morris-Pratt,Boyer-Moore和Rabin-Karp.要知道正在使用哪一个,您应该提取您正在使用的标准库的任何版本的文档.也就是说,你不能指望它是便携式的.我的猜测是大多数实现只使用朴素匹配算法,因为最坏的情况通常不会在实践中出现.
希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
1015 次 |
| 最近记录: |