以非迭代序列进行循环检测

时间:2015-09-07 19:18:56

标签: algorithm cycle-detection

我的理解是tortoise-hare类算法适用于迭代序列 也就是说,对于任何x,succ(x)= x0。

我想实现一个能够检测确定性和非确定性无限重复序列中的循环的算法。

序列可以具有非重复前缀子序列,例如在序列1666666...中,具有前缀1和重复模式6

该算法将返回序列中最长的重复模式。 001100110011...的重复模式为001122583575837583758...的重复模式为58357

我的想法是以某种方式从那里产生对最长模式长度的猜测,但我无法按顺序完成任务。

1 个答案:

答案 0 :(得分:1)

tortoise-hare算法使用相同的地址来识别周期。此问题需要不同类型的算法。某种形式的特里或结构,如LZW压缩,将是我寻找解决方案的地方。