题解 | #左旋转字符串#

左旋转字符串

http://www.nowcoder.com/practice/12d959b108cb42b1ab72cef4d36af5ec

# -*- coding:utf-8 -*-
class Solution:
    
    def reverse(self, arr):
#         print("arr:",arr)
        mid = len(arr)/2
        for idx in range(0, mid):
            arr[idx],arr[len(arr)-idx-1] =  arr[len(arr)-idx-1],arr[idx]
        return arr
        
    def LeftRotateString(self, s, n):
        # write code here
        lenS = len(s)
        if lenS <= 1:
            return s
        if n > lenS:
            n = n % lenS
#             print("nnn", n)
#         print("n:",n)
        
        s = [str(item) for item in s]
#         print(s)
        s = self.reverse(s)
#         print(s)
        s[0:len(s)-n] = self.reverse(s[0:len(s)-n])
#         print("3s:",s)
        s[len(s)-n:len(s)] = self.reverse(s[len(s)-n:len(s)])
#         print("4s:",s)
        return ''.join(s)
        
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务