两个栈,永远记录当前解出来的码

class Solution:
    def decodeString(self, s: str) -> str:
        strStack = []
        numStack = []
        current = ''
        num = 0
        for char in s:
            if char >= '0' and char <= '9':
                num = num * 10 + int(char)
            elif char.isalpha():
                current += char
            elif char == '[':
                numStack.append(num)
                strStack.append(current)
                num = 0
                current = ''
            elif char == ']':
                tmpNum = numStack.pop()
                current *= tmpNum
                tmpStr = strStack.pop()
                current = tmpStr + current 

        return current

  

相关文章:

  • 2022-12-23
  • 2021-11-27
  • 2022-12-23
  • 2021-09-27
  • 2021-10-13
  • 2021-12-07
  • 2021-06-07
猜你喜欢
  • 2021-11-30
  • 2021-07-07
  • 2021-04-17
  • 2021-04-04
  • 2022-12-23
  • 2021-11-15
相关资源
相似解决方案