Google VO 面试真题解析:字符串解压缩(重复分组展开)

19次阅读
没有评论

Write a function that decompresses a string:

"a(bcd){3}e" -> "abcdbcdbcde"
"a(bc(d){4}e){3}f" -> "abcddddebcddddebcddddef"

这道题要求实现一个字符串解压函数,核心是把形如 <code>(…){k}</code> 的片段按次数展开,并且要正确处理嵌套括号。例如 <code>a(bc(d){4}e){3}f</code> 需要先展开内部的 <code>(d){4}</code>,再展开外层整体重复 3 次。通常可以用栈或递归来做:遍历字符串时维护当前构造结果,遇到左括号就进入子串,遇到右括号和重复次数就把子结果重复拼接回去。这个题重点考察的是括号嵌套解析、字符串拼接和对重复次数的处理。

正文完
 0