leetcode Longest Valid Parentheses
2014-05-08 16:46
169 查看
思路:
//引入一个bool数组flag[], flag[i]标记i位置能不能匹配 //最后统计最长true的长度
class Solution {
public:
//引入一个bool数组flag[], flag[i]标记i位置能不能匹配 //最后统计最长true的长度
int longestValidParentheses(string s) {
if(s.length()<2) return 0;
// int sta = 0; // 标记待匹配的‘(’的个数
vector<bool> flag(s.length(),false);
stack<int> sta; // 标记待匹配的‘(’的下标
for(int i=0; i<s.length(); i++){
if(s[i]=='('){
sta.push(i);
continue;
}
else{
if(!sta.empty()){
flag[i] = true;
flag[sta.top()] = true;
sta.pop();
continue;
}
}
}
int longest = 0;
int tmp = 0;
for(int i=0; i<s.length(); i++){
// cout<<flag[i]<<endl;
if(flag[i]){
tmp++;
}
else{
longest = max(tmp,longest);
tmp = 0;
}
}
longest = max(tmp,longest);
return longest;
}
};
相关文章推荐
- [LeetCode] Longest Valid Parentheses 最长有效括号
- [leetcode]Longest Valid Parentheses
- leetcode - Longest Valid Parentheses
- Leetcode:Longest Valid Parentheses
- LeetCode 32. Longest Valid Parentheses
- LeetCode 121 Longest Valid Parentheses
- LeetCode: Longest Valid Parentheses (求最长有效匹配括号子串的长度)
- leetcode - Longest Valid Parentheses
- Longest Valid Parentheses -- leetcode
- 49_leetcode_Longest Valid Parentheses
- leetcode Longest Valid Parentheses
- leetcode Longest Valid Parentheses
- leetcode: Longest Valid Parentheses
- LeetCode题目:32. Longest Valid Parentheses
- [leetcode] Longest Valid Parentheses
- leetcode: Longest Valid Parentheses
- leetcode:Longest Valid Parentheses 使用动态规划O(n)思路
- leetcode第一刷_Longest Valid Parentheses
- LeetCode题解:Longest Valid Parentheses
- LeetCode: Longest Valid Parentheses [031]