LeetCode刷题之796.旋转字符串
我不知道将去向何方,但我已在路上! |
---|
时光匆匆,虽未曾谋面,却相遇于斯,实在是莫大的缘分,感谢您的到访 ! |
- 题目:
给定两个字符串A和B。A的旋转操作就是将A最左边的字符移动到最右边。例如,若A = ‘abcde’,在移动一次之后结果就是’bcdea’。如果在若干次旋转操作之后,A能变成B,那么返回True。 - 示例:
示例1:
输入: A = 'abcde', B = 'cdeab'
输出: true
示例2:
输入: A = 'abcde', B = 'abced'
输出: false
- 注意:
• A和B长度不超过100。 - 代码:
class Solution:
def rotateString(self, A: str, B: str) -> bool:
for i in range(len(A)+1):
if A[i:] + A[:i] == B:
return True
return False
# 执行用时 :36 ms, 在所有 Python3 提交中击败了99.04%的用户
# 内存消耗 :13.2 MB, 在所有 Python3 提交中击败了35.53%的用户
- 算法说明:
将A的前i个字符,附加到A的最后,然后判断是否和B一样,如果一样返回True,否则继续循环;直到循环结束,返回False。