在Python中将字符串的游程形式解码为普通形式的程序

假设我们有一个字符串s。s是一个游程编码的字符串,我们必须找到它的解码版本。众所周知,行程编码是一种快速而简单的字符串编码方法。想法如下-重复的连续元素(字符)为单个计数和字符。例如,如果字符串像“ BBBBAAADDCBB”,则将被编码为“ 4B3A2D1C2B”。

因此,如果输入类似于s =“ 4B3A2D1C2B”,则输出将为“ BBBBAAADDCBB”

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

  • 输出:=空字符串

  • num:=空字符串

  • 对于s中的每个字符,

    • num:= num +我

    • 输出:=输出+ i *(数字作为数字)

    • num:=空字符串

    • 如果我是字母,那么

    • 除此以外,

    • 返回输出

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

    示例

    class Solution:
       def solve(self, s):
          output = ""
          num=""
          for i in s:
             if i.isalpha():
                output+=i*int(num)
                num=""
             else:
                num+=i
          return output
    ob = Solution() print(ob.solve("4B3A2D1C2B"))

    输入值

    "4B3A2D1C2B"

    输出结果

    BBBBAAADDCBB
    猜你喜欢