旋转字符串
给定一个字符串和一个偏移量,根据偏移量旋转字符串(从左向右旋转)
例如:
对于字符串 "abcdefg".
offset=0 => "abcdefg"
offset=1 => "gabcdef"
代码
#第一种方法我自己写的,在Spyder上运行正确,lintcode通不过
def rotateString(str1, offset):
offset = offset % len(str1) #如果offset大于字符串长度,
str2 = str1[-offset:]
str3 = str1[:-offset]
str4 = str2 + str3
return str4
#第二种方法是网上找的答案,lintcode通过,Spyder上运行报错
def rotateString(s, offset):
if len(s) > 0:
offset = offset % len(s)
str2 = (s + s)[len(s) - offset : 2 * len(s) - offset]
for i in xrange(len(str2)):
s[i] = str2[i] # 这里lintcode能通过,可在Spyder上运行报错:'str' object does not support item assignment
20180102