用 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+ 次觀看

開啟你的職業生涯

完成此課程即可獲得認證

開始
廣告