[LeetCode]32. Longest Valid Parentheses

    xiaoxiao2021-03-25  57

    [LeetCode]32. Longest Valid Parentheses

    题目描述

    思路

    开始:将’(‘压栈,当有’)’时, 出栈,结果+1 问题:统计的是所有合法的情况,不是最长合法的情况 修正:将对应的索引压栈,满足条件时,出栈,当前索引减去栈顶索引,栈初始化时先将-1压栈

    代码

    class Solution { public: int longestValidParentheses(string s) { int res = 0; stack<int> index; index.push(-1); for (int i = 0; i < s.size(); ++i) { if (index.top() != -1 && s[index.top()] == '(' && s[i] == ')'){ index.pop(); res = res > i - index.top() ? res : i - index.top(); } else { index.push(i); } } return res; } };
    转载请注明原文地址: https://ju.6miu.com/read-33758.html

    最新回复(0)