在单词中找到最短的重复周期?

在单词中找到最短的重复周期?,第1张

在单词中找到最短的重复周期?

O(n)解决方案。假定必须覆盖整个字符串。关键的观察结果是我们生成了模式并对其进行了测试,但是如果我们发现不匹配的内容,则必须包含已经测试过的整个字符串,因此我们不必重新观察那些字符。

def pattern(inputv):    pattern_end =0    for j in range(pattern_end+1,len(inputv)):        pattern_dex = j%(pattern_end+1)        if(inputv[pattern_dex] != inputv[j]): pattern_end = j; continue        if(j == len(inputv)-1): print pattern_end return inputv[0:pattern_end+1];    return inputv;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5031382.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存