例003-旋转字符串
1.问题描述
给定一个字符串(以字符数组的形式)和一个偏移量,根据偏移量原地从左向右旋转字符串
2.问题示例
输入: str = 'abcdefg', offset = 3
输出: 'efgabcd'
输入: str = 'abcdefg', offset = 0
输出: 'abcdefg'
输入: str = 'abcdefg', offset = 1
输出: 'gabcdef'
返回旋转后
3.代码实现
def rotateStrinig(s,offset):
#
if len(s)>0:
# 如果 offset 大于 len(s) ,如 offset=9 len(s)=6 相当于 旋转了 9-6=3的位置
offset = offset%len(s)
# s+s 相当于 把字符串拼接成了一个圆圈,只需要
temp = (s + s)[len(s)-offset : 2*len(s)-offset]
for i in range(len(temp)):
s[i] = temp[i]
s = ['a','b','c','d','e','f','g','h']
offset = 4
out_put = rotateStrinig(s, offset)
print("输入:s = ['a','b','c','d','e','f','g','h']",' , offset = ',offset)
print('输出:s = {}'.format(s))
输入:s = ['a','b','c','d','e','f','g','h'] , offset = 4
输出:s = ['e', 'f', 'g', 'h', 'a', 'b', 'c', 'd']