Python中的反向字符串II

为了解决这个问题,我们将遵循以下步骤-

  • l:=列出s的字符

  • i:= k-1

  • 而我<l + k的大小-

    • a:= l [从索引0到i-k + 1]

    • b:= l [从索引i-k + 1到i + 1]

    • c:= l [从索引i + 1到结束]

    • l:= a串联b [从索引0到结束]串联c

    • i:= i + 2 * k

  • 通过串联l中的每个字符返回字符串

例 

让我们看下面的实现以更好地理解-

class Solution:
   def reverseStr(self, s, k):
      l = list(s)
      i = k-1
      while i < len(l)+k:
         a = l[:i-k+1]
         b = l[i-k+1:i+1]
         c = l[i+1:]
         l = a + b[::-1] + c
         i += 2*k
      return ''.join(l)

ob = Solution()print(ob.reverseStr("abcdefg", 3))

输入值

"abcdefg", 3

输出结果

cbadefg