题目:
给你一个字符串 s
。
你的任务是重复以下操作删除 所有 数字字符:
- 删除 第一个数字字符 以及它左边 最近 的 非数字 字符。
请你返回删除所有数字字符以后剩下的字符串。
思路:
判断当前所指的元素是否为数字,如果是,删除非数字字符列表的最后一个,如果不是,将当前所指的元素存入非数字字符列表中。
代码:
class Solution:
def clearDigits(self, s: str) -> str:
st = []
for i in s:
if i.isdigit():
st.pop()
else:
st.append(i)
return ''.join(st)
心得:模拟栈