题目链接:https://leetcode-cn.com/problems/longest-valid-parentheses/
题目描述:
给你一个只包含 '(' 和 ')' 的字符串,找出最长有效(格式正确且连续)括号子串的长度。
题解:
class Solution {
public:
int longestValidParentheses(string s) {
int maxLen = 0;
stack<int> stk;
stk.push(-1);
for(int i = 0; i < s.size(); i++)
{
if(s[i] == '(')
{
stk.push(i);
}else
{
stk.pop();
if(stk.empty())
stk.push(i);
else
maxLen = max(maxLen, i - stk.top());
}
}
return maxLen;
}
};