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

标签 java string

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

给定字符串abc

字符串长度=3

创建了一个大数组abcbcacab

并检查使用包含。

在这个解决方案中我遇到了问题

因为错误的输入也会被传递,即“cbc”

最佳答案

简单的解决方案:

测试字符串长度(旋转后,字符串长度仍然相同)。
将字符串与其自身连接(两者都有效)并测试结果是否包含另一个字符串。

如果两个测试都通过,则这两个字符串是彼此的旋转。

关于java - 如何测试两个字符串是否相互旋转?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26728654/

相关文章:

java - 在 JSP 中检索部分 URL 路径

java - 如何从此 ConcurrentHashMap<String,ConcurrentHashMap<String,ArrayList>> 中删除一个值

java - 语法错误 : insert "enum Identifier", 插入 "EnumBody",插入 "}"

java - 字符串大小超过 int 的最大限制

Javascript:使用正则表达式检查一个字符串是否仅包含另一个字符串的值?

objective-c - addingPercentEncoding 在 Swift 中的工作方式不同

c++ - Visual Studio - 获取字符串中第一个字符的内存地址

java - 无法连接到 .NET 中的远程 MySQL (MariaDB) 数据库,但可以使用 Java

java - 如何使用 GUI 构建简单的国际象棋游戏的 UML 图?

java - 替换 Java 中的空格和其他一些字符