当前位置:   article > 正文

华为面试手撕代码真题【反转每对括号间的子串】_华为测试手撕代码

华为测试手撕代码

给出一个字符串 s(仅含有小写英文字母和括号)。

请你按照从括号内到外的顺序,逐层反转每对匹配括号中的字符串,并返回最终的结果。

示例 1:

输入:s = "(abcd)"
输出:"dcba"
示例 2:

输入:s = "(u(love)i)"
输出:"iloveu"
解释:先反转子字符串 "love" ,然后反转整个字符串。
示例 3:

输入:s = "(ed(et(oc))el)"
输出:"leetcode"
解释:先反转子字符串 "oc" ,接着反转 "etco" ,然后反转整个字符串。
示例 4:

输入:s = "a(bcdefghijkl(mno)p)q"
输出:"apmnolkjihgfedcbq"
 

提示:

1 <= s.length <= 2000
s 中只有小写英文字母和括号
题目测试用例确保所有括号都是成对出现的

        刷题多的话,看到括号匹配类型的题目,应该有点肌肉记忆了吧,就是一个栈的使用问题。

        唯一一个大部分同学都会犯的错就是时间复杂度问题分析错了,虽然栈只遍历一遍就行了,但是时间复杂度是O(

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/929527
推荐阅读
相关标签
  

闽ICP备14008679号