LeetCode 字符串轮转

/**
 * 字符串轮转。给定两个字符串s1和s2,请编写代码检查s2是否为s1旋转而成(比如,waterbottle是erbottlewat旋转后的字符串)。
 *
 * 示例1:
 *
 *  输入:s1 = "waterbottle", s2 = "erbottlewat"
 *  输出:True
 * 示例2:
 *
 *  输入:s1 = "aa", "aba"
 *  输出:False
 * 提示:
 *
 * 字符串长度在[0, 100000]范围内。
 * 说明:
 *
 * 你能只调用一次检查子串的方法吗?
 *
 * 来源:力扣(LeetCode)
 * 链接:https://leetcode-cn.com/problems/string-rotation-lcci
 * 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
 */
public class 字符串轮转 {
    public static void main(String[] args) {
        System.out.println(isFlipedString("waterbottle","erbottlewat"));
    }
    public static boolean isFlipedString(String s1, String s2) {
        //解题思路: 如果 s2是s1旋转后而成 则s2必定是s1 += s1子串;
        if (s1 == null || s2 == null  ||s1.length() != s2.length() ){
            return  false;
        }
        s1 += s1;
        return   s1.contains(s2);

    }
}
发布了83 篇原创文章 · 获赞 6 · 访问量 9134

猜你喜欢

转载自blog.csdn.net/weixin_41930050/article/details/104801081