news 2026/1/18 7:06:35

32. 最长有效括号

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
32. 最长有效括号

题目描述

32. 最长有效括号 - 力扣(LeetCode)

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

左右括号匹配,即每个左括号都有对应的右括号将其闭合的字符串是格式正确的,比如"(()())"

示例 1:

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

示例 2:

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

示例 3:

输入:s = ""输出:0

解题思路:

暴力解法:超出了时间限制

class Solution { public static int longestValidParentheses(String s) { if(s==null||s.length()<1){ return 0; } int res=0; for(int i=s.length()-1;i>0;i--){ if(s.charAt(i)==')'){ res=Math.max(res,curValid(s,i)); } if(res>=i){ break; } } return res; } public static int curValid(String s,int index){ if(index==0){ return 0; } Stack<Character> r_stack = new Stack<>();//")" int res = 0; r_stack.push(s.charAt(index)); int start =0; int n=index; while(start<=index-1){ while(index-1>=start){ index--; Character ch= s.charAt(index); if(ch==')'){ r_stack.push(ch); }else{ if(r_stack.isEmpty()){ return res; }else{ res+=2; r_stack.pop(); } } } if(!r_stack.isEmpty()){ start=start+r_stack.size(); r_stack.clear(); index=n; r_stack.push(s.charAt(index)); res = 0; }else{ break; } } return res; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/17 17:35:38

Linly-Talker在婚礼主持领域的创意应用尝试

Linly-Talker在婚礼主持领域的创意应用尝试 在一场婚礼上&#xff0c;当大屏幕缓缓亮起&#xff0c;一位面容慈祥的“父亲”微笑着走上虚拟舞台&#xff0c;用熟悉的声音为新人致词——而这位父亲早已离世。这不是电影情节&#xff0c;而是借助AI数字人技术正在变为现实的情感…

作者头像 李华
网站建设 2026/1/11 11:13:42

Linly-Talker支持多语言吗?中文场景下的优化表现

Linly-Talker 支持多语言吗&#xff1f;中文场景下的优化表现 在虚拟主播、AI客服和在线教育日益普及的今天&#xff0c;一个“会说话、懂表达”的数字人已不再是科幻电影中的设定。越来越多的企业开始部署基于人工智能的交互式数字人系统&#xff0c;以提升服务效率与用户体验…

作者头像 李华
网站建设 2026/1/17 19:49:07

从封闭到开放,Open-AutoGLM如何颠覆传统GLM架构?

第一章&#xff1a;从封闭到开放&#xff0c;Open-AutoGLM的范式跃迁 传统自动化机器学习&#xff08;AutoML&#xff09;系统多构建于封闭架构之上&#xff0c;依赖预设模型库与固定搜索策略&#xff0c;难以适应快速演进的自然语言处理需求。Open-AutoGLM 的诞生标志着这一局…

作者头像 李华