用 Python 编写程序对字符串的运行长度编码形式解码成正常形式


假设我们有一个字符串 s。s 是运行长度编码的字符串,我们需要找到其解码版本。众所周知,运行长度编码是一种快速简单的方法来对字符串进行编码。其思想如下 - 将重复连续出现的元素(字符)编码为数量和字符的组合。例如,如果字符串是“BBBBAAADDCBB”,则将被编码为“4B3A2D1C2B”。

所以,如果输入类似 s = “4B3A2D1C2B”,则输出将是“BBBBAAADDCBB”。

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

  • output := 空字符串
  • num:= 空字符串
  • 对 s 中的每个字符 i 执行以下操作
    • 如果 i 是字母,则
      • output := output + i*(num 作为数字)
      • num:= 空字符串
    • 否则
      • num := num + i
  • 返回 output

让我们看看以下实现,以帮助我们更好地理解 -

示例

 在线演示

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

更新于: 2020 年 10 月 5 日

2K+ 次观看

开启你的职业生涯

完成此课程即可获得认证

开始
广告