KMP是搜索用的,替换用的是什么?
最佳答案
“替换”只不过是正确复制正确的(未匹配的)子串,同时插入匹配部分的替换(这是一个非常简单的任务,完全独立于算法问题!-)。因此,如果您知道 KMP 是搜索子任务的最佳算法(在一般情况下,不是像您提出的那样简单的问题),它也最适合“替换”(特别是如果您通过创建新字符串来“替换”,就像您在 Java 和 Python 等具有不可变字符串的语言中所做的那样——但是,尽管如此,即使使用可变字符串语言——也只需先识别匹配项,然后执行替换;-).
关于algorithm - 字符串替换最有效的算法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1905207/