首页 > 其他分享 >最长有效括号

最长有效括号

时间:2023-02-16 21:56:15浏览次数:36  
标签:const 有效 max len 最长 括号 return stack

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

/**
 * @param {string} s
 * @return {number}
 */
const longestValidParentheses = (s) => {
    const len = s.length
    if (len <= 1) return 0
    const stack = [-1]
    let max = 0
    for (let i = 0; i < len; i++) {
        const v = s[i]
        if (v === '(') {
            stack.push(i)
        } else {
            stack.pop()
            if (stack.length > 0) {
                max = Math.max(max, i - stack[stack.length - 1])
            } else {
                stack.push(i)
            }
        }
    }
    return max
};

  

标签:const,有效,max,len,最长,括号,return,stack
From: https://www.cnblogs.com/zhenjianyu/p/17128454.html

相关文章

  • 力扣---5. 最长回文子串
    给你一个字符串s,找到s中最长的回文子串。如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。示例1:输入:s="babad"输出:"bab"解释:"aba"同样是符合题意的答案......
  • 力扣3. 无重复字符的最长子串
    给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1:输入:s="abcabcbb"输出:3解释:因为无重复字符的最长子串是"abc",所以其长度......
  • 力扣---3. 无重复字符的最长子串
    给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。示例1:输入:s="abcabcbb"输出:3解释:因为无重复字符的最长子串是"abc",所以其长度为3。示例2:......
  • 如何简单有效的对云上数据进行备份、处理与分析
    随着越来越多的企业选择迁移数据上云,云上服务逐渐接管了大量的计算和数据量,如何简单有效的对云上数据进行持久化储存、对数据做进一步处理与分析、挖掘数据价值是云上用户......
  • leetcode - 1124 表现良好的最长时间段
    1124.表现良好的最长时间段题目给你一份工作时间表hours,上面记录着某一位员工每天的工作小时数。我们认为当员工一天中的工作小时数大于8小时的时候,那么这一天就是......
  • 【LeetCode队列#02】有效括号
    有效括号力扣题目链接(opensnewwindow)给定一个只包括'(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左......
  • 如何有效地报告 Bug
    如何有效地报告Bug作者:SimonTatham专业的自由软件程序员翻译:Dasn[English|Português|简体中文|Česky|Dansk|Deutsch|Español|Français|Magyar......
  • AI问答 - 怎样更有效学习
    AI问答-怎样更有效学习==AnswerbyChatGPT==设定可实现和可衡量的目标:花一些时间确定您需要和想要学习的内容,然后提出可帮助您保持正轨的可衡量目标。分解大任务:将......
  • 【LeetCode】1124.表现良好的最长时间段
    【LeetCode】1124.表现良好的最长时间段题目链接:1124.表现良好的最长时间段前缀和什么是前缀和:【算法】前缀和我们计工作时间超过8小时为1,否则为-1,那么所谓的“表现良......
  • #yyds干货盘点# LeetCode面试题:最长公共前缀
    1.简述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 示例1:输入:strs=["flower","flow","flight"]输出:"fl"示例2:输入:strs=["......