最长有效括号

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

java 复制代码
class Solution {
    public int longestValidParentheses(String s) {
        Stack<Integer> st = new Stack<Integer>();
        int ans = 0;
        for(int i = 0 ,start = 0;i < s.length();i ++)
        {
            if( s.charAt(i) == '(') st.add(i);
            else
            {
                if(!st.isEmpty()) 
                {
                    st.pop();
                    if(st.isEmpty()) ans = Math.max(ans,i - start + 1);
                    else ans = Math.max(ans,i - st.peek());
                }
                else start = i + 1;
            }
        }
        return ans;
    }
}
相关推荐
吹什么轩3 分钟前
数据结构复习:二叉搜索树
数据结构·算法
H.莓飛5 分钟前
【数据结构】堆
linux·数据结构·算法
纪念 22914 分钟前
C++算法(二)
开发语言·c++·算法
lie..23 分钟前
30天从零开始学AI应用开发(Day 16):Embedding 是什么?用人话讲明白“向量检索”
人工智能·算法·embedding
朝朝辞暮i11 小时前
C++ 第 21 课:struct —— 把一组相关数据打包在一起
开发语言·c++·算法
青梅橘子皮11 小时前
Blue---二分算法(二分查找与二分答案)
算法
长河11 小时前
Java的GC(垃圾回收)中,标记无用对象的核心方法是可达性分析算法
java·jvm·算法
月光船幽幽12 小时前
加性偏移外推提升参数识别可靠性
python·算法
Ivanqhz12 小时前
层归一化、残差、前馈网络与激活函数简述
服务器·数据库·人工智能·深度学习·算法
不会就选b13 小时前
算法日常・每日刷题--<动态规划>3
数据结构·算法