[LeetCode] 796. Rotate String_Easy **KMP
2018-08-17 10:40 Johnson_强生仔仔 阅读(193) 评论(0) 收藏 举报We are given two strings, A and B.
A shift on A consists of taking string A and moving the leftmost character to the rightmost position. For example, if A = 'abcde', then it will be 'bcdea' after one shift on A. Return True if and only if A can become B after some number of shifts on A.
Example 1: Input: A = 'abcde', B = 'cdeab' Output: true Example 2: Input: A = 'abcde', B = 'abced' Output: false
Note:
AandBwill have length at most100.
这个题目比较有技巧,因为直接判断B 是否in A + A即可。不过要注意进行length的判断。 O(n^2)
**Improve: KMP(有待提升)
Code
class Solution: def rotateString(self, A, B): return len(A) == len(B) and A in B + B
浙公网安备 33010602011771号