遇到左括号加一,遇到右括号减一,当等于零的时候,就是最外层的括号结束了,将这段字符范围的最左边和最右边一个字符删除即可。
下面是使用C++实现的代码:
class Solution {
public:
string removeOuterParentheses(string s) {
string ret = "";
int pre = 0, count = 0;
for (int i = 0; i < s.size(); i++) {
if (s[i] == '(') {
count++;
} else {
count--;
}
if (count == 0) {
ret += s.substr(pre + 1, i - pre - 1);
pre = i + 1;
}
}
return ret;
}
};