剑指offer43-左旋转字符串

题目描述

汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!

示例

输入       "abcXYZdef",3

返回值   "XYZdefabc"

知识点回顾

字符串

可以像数组一样使用索引与切片,但是不能pop和append

代码

# -*- coding:utf-8 -*-
class Solution:
    def LeftRotateString(self, s, n):
        # write code heres)
        if s=="":
            return ""
        for i in range(n):
            s+=s[i]
        return s[n:]

 更简单的写法:

# -*- coding:utf-8 -*-
class Solution:
    def LeftRotateString(self, s, n):
        # write code heres)
        return s[n:]+s[0:n]

 

 

posted @ 2020-12-07 19:34  foolangirl  阅读(50)  评论(0编辑  收藏  举报