解码字符
描述
将形如 2[ad] 的字符解串码成 adad,数字代表次数,方括号的内容代表被重复的部分。
样例
样例11
2输入: 3[a]2[bc]
输出: aaabcbc
样例21
2输入: 3[a2[c]]
输出: accaccacc
思路
可以利用栈解决,建立两个栈,一个保存字符,一个保存数字。这里要注意对重复部分的处理,因为中括号可能里面还有中括号,这时候要将字符重新压回栈内。同时注意字符不一定外面有中括号,字符包括小写和大写字符。这道题也可以用递归解决。
代码
1 | class Solution { |
参考代码
1 | class Solution { |