大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
给出一个字符串 s(仅含有小写英文字母和括号)。
请你按照从括号内到外的顺序,逐层反转每对匹配括号中的字符串,并返回最终的结果。
注意,您的结果中 不应 包含任何括号。
示例 1:
输入:s = “(abcd)”
输出:“dcba”
示例 2:
输入:s = “(u(love)i)”
输出:“iloveu”
示例 3:
输入:s = “(ed(et(oc))el)”
输出:“leetcode”
示例 4:
输入:s = “a(bcdefghijkl(mno)p)q”
输出:“apmnolkjihgfedcbq”
提示:
0 <= s.length <= 2000
s 中只有小写英文字母和括号
我们确保所有括号都是成对出现的
class Solution {
public:
stack<char>s1;
queue<char>s2;
bool isalpha(char a){
return a >= 'a' && a <= 'z';
}
string reverseParentheses(string s) {
for(auto &a : s){
if(isalpha(a) || a == '('){
s1.push(a);
}
else{
while(s1.top() != '('){
s2.push(s1.top());
s1.pop();
}
s1.pop();
while(s2.size()){
s1.push(s2.front());
s2.pop();
}
}
}
string t = "";
while(s1.size()){
t.append(1,s1.top());
s1.pop();
}
reverse(t.begin(),t.end());
return t;
}
};
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/169064.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...