2013-10-14 24 views
-2

我需要解决以下问题:确定一个字符串是否是另一个字符串的循环旋转?

给出一个线性时间的算法来确定文本T是另一个字符串T”的周期循环。例如,arccar是彼此的循环旋转。

我不知道从哪里开始。我怎么解决这个问题?

+0

设xy代表文本T,yx代表其旋转后的字符串,并通过连接它们,通过使用KMP模式初始化函数,我们可以找到前缀长度L,然后比较其余两个子串。但仍然有疑问 –

回答

5

作为提示:如果x和y具有相同的长度,则x是y的循环旋转iff x是yy的子串。尝试证明这一点并将其用作算法的基础。

希望这会有所帮助!

相关问题