如何测试两个字符串是否相互旋转?

时间:2014-11-04 05:57:30

标签: java string

假设有一个字符串abc,并给出了abcbcacab等旋转字符串(即3个可能的旋转字符串是可能的),同样我需要一个方法应该取两个字符串作为输入,并判断这两个字符串是否属于此类别。 我想到了以下几点:

给定字符串abc

字符串长度= 3

创建了一个大数组abcbcacab

并使用contains确认。

在这个解决方案中我有问题

因为错误的输入也会通过,即“cbc”

1 个答案:

答案 0 :(得分:3)

简单的解决方案:

测试字符串长度(旋转后,字符串长度仍然相同) 将字符串连接到自身(可以正常工作)并测试结果是否包含另一个。

如果两个测试都通过了,那么两个字符串就是彼此的旋转。