796. Rotate String
【思路】:
字符串順序不變,首尾循環(huán)移動(dòng),如果A = 'abcde'經(jīng)過幾次移動(dòng),變成B='bcdea',返回true;
- 那么可以遍歷字符串a(chǎn),找到b字符串的開頭;
- 然后,兩個(gè)字符串比較,如果相同,那么就可返回true:
但是這種方法有個(gè)問題,如果一個(gè)字符出現(xiàn)多次,那么需要多次比較;
因此,將字符串A重復(fù)一次,即A+A,然后在這個(gè)新字符串中尋找B是否存在;
bool rotateString(string A, string B) {
return (A.length() == B.length()) && ((A + A).find(B) != string::npos);
}