LeetCode 简单 -旋转字符串(796)
给定两个字符串, A
和 B
。
A
的旋转操作就是将 A
最左边的字符移动到最右边。 例如, 若 A = 'abcde'
,在移动一次之后结果就是'bcdea'
。如果在若干次旋转操作之后,A
能变成B
,那么返回True。
示例 1: 输入: A = 'abcde', B = 'cdeab' 输出: true
利用一个规律,
如果一个字符串是由另一个串旋转得到的,那么新串一定是2*原串的的子串。
string find方法,若查找成功,返回按查找规则找到的第一个字符或子串的位置;若查找失败,返回npos,即-1(打印出来为4294967295)。
class Solution { public: bool rotateString(string A, string B) { if (A.length() != B.length()) return false; A = A + A; if(A.find(B)!=-1)return true; else return false; } };