796. 旋转字符串题解
题目来源:796. 旋转字符串
2022.04.07 每日一题
LeetCode 题解持续更新中GitHub仓库地址 CSDN博客地址
今天的题目很简单,我们需要判断一个字符串s
是否可以通过旋转与字符串goal
相等,
首先我们可以通过判断两个字符串的长度是否相等,来判断,因为如果长度不相等是无法通过旋转使得两个字符串相等,可以直接返回false
另一方面,由于是不停的旋转字符串,我们可以将两个字符串s
相加,得到的一个新的字符串,判断这个新的字符串中是否有 goal
的存在,如果存在就返回 true
不存在就返回 false
具体代码如下
class Solution {
public:
bool rotateString(string s, string goal) {
return s.size() == goal.size() && (s + s).find(goal) != string::npos;
}
};
class Solution {
public boolean rotateString(String s, String goal) {
return s.length() == goal.length() && (s + s).contains(goal);
}
}