面试题 01.09. 字符串轮转
题目要求:
字符串轮转。给定两个字符串s1和s2,请编写代码检查s2是否为s1旋转而成(比如,waterbottle是erbottlewat旋转后的字符串)。
解题思路:
想不到其他办法了,效率低也没办法了。
- 遍历S1的每个位置,并将其分割;
- 将分割后的S1,颠倒位置,重新组合;
- 判断重新组合的字符串是否和S2相等;
- 返回结果。
题解代码:
class Solution:
def isFlipedString(self, s1: str, s2: str) -> bool:
#计算s1的长度
n = len(s1)
#判断两个字符串是否为空
if s1 =="" and s2 =="":
return True
#遍历s1每个位置,并以其为分隔点分割s1,并重新拼凑
for i in range(n):
#判断拼凑的s1是否和s2相等
if s2 == s1[i:] +s1[0:i]:
return True
return False
(“Always do your best. What you plant now, you will harvest later.(永远全力以赴,今日种下的种子,明日终将收获。)
”FIGHTING. . . .)