[英]Knuth Morris Pratt algorithm comparison
遇到这个问题时,我一直在为考试而学习,请大家帮忙
对于模式P和文本T的任何对齐,假定在执行KMP算法期间在P [i + 1]和T [k]发生不匹配,总共要比较K [T]在执行KMP的过程中有多少次算法(SPi未优化)
我遇到的可能的解决方案是
- 我-SPI
- SPi的+ 1
- 你
- 正SPi的
但是在某些情况下它们都失败了,
在所有情况下都没有一个答案。
仍然可以给比较次数设置一个上限,并且可以确定P
中的所有符号是否相同。 尝试计算一下。
如果这还不够,请尝试使用此属性:KMP会将T[k]
与P [SP i ]比较,然后与P [SP SP i +1 ]比较,依此类推,直到出现以下两个选项之一:
T[k]
取决于P和T,以上两者可能以多种不同方式发生,因此不可能给出一个封闭的公式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.