leetcode最长有效括号

. - 力扣(LeetCode)

32. 最长有效括号

困难

相关标签

相关企业

给你一个只包含 '(' 和 ')' 的字符串,找出最长有效(格式正确且连续)括号

子串

的长度。

示例 1:

复制代码
输入:s = "(()"
输出:2
解释:最长有效括号子串是 "()"

示例 2:

复制代码
输入:s = ")()())"
输出:4
解释:最长有效括号子串是 "()()"

示例 3:

复制代码
输入:s = ""
输出:0

提示:

  • 0 <= s.length <= 3 * 104
  • s[i] 为 '(' 或 ')'
cpp 复制代码
class Solution {
public:
    int longestValidParentheses(string s) {
        stack<char> str;
        int max_len = 0;
        for (int i = 0; i < s.length(); i++) {
            if (s[i] == '(') {
                if (str.size() > 0 && str.top() == '(') {
                    continue;
                }
                str.push(s[i]);
            } else if (str.size() > 0) {
                char val = str.top();
                if (val == '(') {
                    str.push(s[i]);
                    max_len = std::max(max_len, (int)str.size());
                }
            }
        }
        return max_len;
    }
};
相关推荐
怕浪猫5 分钟前
Super-agent 在各大模型厂商的应用情况
算法·面试·github
CodeYp201916 分钟前
第6讲:Ext 系列文件系统
linux·文件系统·ext
爱吃香菜的初学者22 分钟前
十九.Linux——TCP协议(1)
linux·网络·tcp/ip
Zevalin爱灰灰25 分钟前
Linux入门第二部分(ARM裸机篇) 第三章 汇编LED驱动实验
linux·汇编·arm开发
海绵宝宝转agent32 分钟前
LeetCode100 二叉树个人题解
算法·leetcode·深度优先
EVEN-091336 分钟前
Linux-IPC进程间通信
linux·运维·服务器
octopus_c38 分钟前
C++ 模板详解:函数模板、类模板、特化与分离编译
开发语言·c++·算法
東隅已逝,桑榆非晚44 分钟前
算法1. 双指针法-移动零
c++·算法
多弗朗皮卡丘44 分钟前
Linux 进程信号
linux·运维·服务器
^乘风破浪^44 分钟前
Kali配置i3wm教程1
linux·kali·i3wm