測試面試LeetCode系列:字符串的左旋轉

題目

字符串的左旋轉操做是把字符串前面的若干個字符轉移到字符串的尾部。請定義一個函數實現字符串左旋轉操做的功能。好比,輸入字符串"abcdefg"和數字2,該函數將返回左旋轉兩位獲得的結果"cdefgab"。python

示例 1:ide

輸入: s = "abcdefg", k = 2 輸出: "cdefgab"函數

示例 2:post

輸入: s = "lrloseumgh", k = 6 輸出: "umghlrlose"測試


限制:.net

  • 1 <= k < s.length <= 10000

來源:LeetCode(力扣)blog


思路

1. 若是是python的話,能夠直接對字符串進行切片,而後對切片後的字符串進行拼接。字符串

2. 遍歷字符串,在將k以前的字符串保存一份爲a,將k以後的字符串再保存一份b,返回b+a便可。get

實現

#解法1
class Solution(object):

    def reverseLeftWords(self, s, n):
        """
        :type s: str
        :type n: int
        :rtype: str
        """
        pre_str = s[:n]
        post_str = s[n:]
        return post_str+pre_str

#解法2
class Solution(object):
    def reverseLeftWords(self, s, n):
        """
        :type s: str
        :type n: int
        :rtype: str
        """
        pre_str = ""
        post_str = ""
        for index,ch in enumerate(s):
            if index < n:
                post_str = post_str + ch
            else:
                pre_str = pre_str + ch
        return pre_str+post_str

各位大神,有其餘思路歡迎留言~博客

博主:測試生財

座右銘:專一測試與自動化,致力提升研發效能;經過測試精進完成原始積累,經過讀書理財奔向財務自由。

csdn:https://blog.csdn.net/ccgshigao

博客園:https://www.cnblogs.com/qa-freeroad/

51cto:https://blog.51cto.com/14900374

相關文章
相關標籤/搜索