(1)剑指Offer58-II.左旋转字符串
题目描述:
请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。
解题思路:
利用python的性质可以直接使用切片进行拼接
科班方法的话就是前半部分旋转 后半部分旋转 整体旋转即可
class Solution(object):
def reverseLeftWords(self, s, n):
"""
:type s: str
:type n: int
:rtype: str
"""
# return s[n:]+s[:n]
l = list(s)
l = self.reverseList(l, 0, n)
# print(l)
l = self.reverseList(l, n, len(s))
# print(l)
l = self.reverseList(l, 0, len(s))
# print(l)
return "".join(l)
def reverseList(self, List, LE, RI):
left, right = LE, RI-1
while left <= right:
List[left], List[right] = List[right], List[left]
left += 1
right -= 1
return List