如何在字符串中查找循环/重复?

see*_*see 3 java

我需要检测字符串中的循环/序列并返回第一次出现.我应该怎么做呢?

示例:

2 0 5 3 1 5 3 1 5 3 1
Run Code Online (Sandbox Code Playgroud)

要发生的第一个序列是5 3 1.

没有规则.例如,序列可以是字符串长度的一半

5 3123 1231 231 31 231 41 452 3453 21 312312 5 3123 1231 231 31 231 41 452 3453 21 312312
Run Code Online (Sandbox Code Playgroud)

顺序是 5 3123 1231 231 31 231 41 452 3453 21 312312

ros*_*sum 6

你研究过Floyds循环寻找算法吗?如果你想找到周期,这可能会对你有所帮助.也很容易实现.