「每日LeetCode」2022年9月29日

本文最后更新于:2023年3月19日 晚上

面试题 01.09. 字符串轮转

面试题 01.09. 字符串轮转

输入:s1 = “waterbottle”, s2 = “erbottlewat” 输出:True 输入:s1 = “aa”, s2 = “aba” 输出:False
字符串轮转。给定两个字符串 s1 和 s2,请编写代码检查 s2 是否为 s1 旋转而成(比如,waterbottle 是 erbottlewat 旋转后的字符串)。
示例 1:
示例 2:
提示:

  1. 字符串长度在[0, 100000]范围内。

说明:

  1. 你能只调用一次检查子串的方法吗?

思路

如果两个字符串等长且,两个 s2 相接包含 s1,那么一定是轮转的字符串

解答

1
2
3
4
5
6
7
8
/**
* @param {string} s1
* @param {string} s2
* @return {boolean}
*/
var isFlipedString = function (s1, s2) {
return s1.length === s2.length && (s2 + s2).includes(s1);
};