32. Longest Valid Parentheses

深入解析经典蓝牙连接:从HCI命令到LMP协议的完整流程 本文深入解析经典蓝牙连接的完整流程,从设备发现、寻呼建立物理链路,到安全配对与加密的每一步。通过对照HCI LOG与AIR LOG,详细拆解了HCI命令与LMP协议报文的对应关系,帮助开发者精准定位连接问题,掌握蓝牙调试的核心方法。 阅读详情

Longest Valid Parentheses

Given a string containing just the characters ‘(’ and ‘)’, find the length of the longest valid (well-formed) parentheses substring.

For “(()”, the longest valid parentheses substring is “()”, which has length = 2.

Another example is “)()())”, where the longest valid parentheses substring is “()()”, which has length = 4.

解题思路:这道题有多种方法可以做,最后采用了动态规划。但普通的动态规划都是向前考虑的,这道题是向后考虑的,可以说是逆向的。比如普通动态规划dp[i]应该是从位置0~i的最长有效括号长度,而这道题的dp[i]表示的是从i到length-1的最长有效括号长度。
因此i从后往前推,若s[i]=’(‘,则匹配的右括号位置end应该是i + dp[i + 1] + 1,若该位置确实是右括号则dp[i] = dp[i + 1] + 2,另外为了计算连续的有效括号长度需要加上dp[end + 1]。

代码:

class Solution {
public:
    int longestValidParentheses(string s) {
        int len = s.length();
        int *dp = new int[len];
        memset(dp,0,len*sizeof(int));
        for (int i = len - 2; i >= 0; i--) {
            if (s[i] == '(') {
                int end = i + dp[i + 1] + 1;
                if (end<len && s[end] == ')') {
                    dp[i] = dp[i + 1] + 2;
                    if (end<len - 1) {
                        dp[i] += dp[end + 1];
                    }
                }
            }
        }
        int maxLen = 0;
        for (int i = 0; i<len; i++) {
            if (dp[i]>maxLen)
                maxLen = dp[i];
        }
        return sizeof(dp);
        delete[]dp; 
    }
};
UE5、CesiumForUnreal实现加载GeoJson绘制多面(MultiPolygon)功能(支持点选高亮) UE5、CesiumForUnreal实现加载GeoJson实现多面(MultiPolygon)的绘制功能,并且支持点选高亮和属性查询。 阅读详情

相关推荐

Dify平台+Excel批量分析实战:5分钟搞定大模型数据处理(附完整代码)

本文详细介绍了如何利用Dify平台的数据集功能,结合Excel和Python脚本,快速构建大模型批量数据处理流水线。通过实战案例演示,读者可在5分钟内完成客户反馈情感分析、产品文案生成等任务,实现从原始数据到结构化洞察的高效转化,极大提升工作效率。

3a9bq4r8t2y的博客 316

【Leetcode】32. Longest Valid Parentheses

题目地址: https://leetcode.com/problems/longest-valid-parentheses/

数学、算法爱好者的博客 355

双向可控硅控制后续篇:过零检测电路、丢波、斩波、定时

双向可控硅功率控制技巧,掌握AC负载的控温控速等。

qq_42289734的博客 3万+

LeetCode 32. Longest Valid Parentheses

题目描述(困难难度) 给一个一堆括号的字符串,然后返回最长的合法的括号的长度。关于括号的问题,我们在 20 题和 22 题也讨论过。 解法一 暴力解法 列举所有的字符串,然后判断每个字符串是不是符合。当然这里可以做个优化就是,因为合法字符串一定是偶数个,所以可以只列举偶数长度的字符串。列举从 0 开始的,长度是 2、4、6 ……的字符串,列举下标从 1 开始的,长度是 2、4、6 ……的字符串,...

wind_liang的博客 989

学习心得——COMSOL Multiphysics with MATLAB联合仿真及寻优计算

学习心得——COMSOL Multiphysics with MATLAB联合仿真及寻优计算

weixin_41678956的博客 8657

六轴机械臂正逆解计算

机械臂运动学就是。包括(Forward Kinematics)和(InverseKinematics)两部分。正运动学就是逆运动学则是关节变量->机械臂末端执行器的姿势=正向运动学机械臂未端执行器的位姿->关节变量=逆向运动学。

gaoxiaochan的博客 1万+

LeetCode第32题思悟——最长有效括号(longest-valid-parentheses)

LeetCode第32题思悟——最长有效括号(longest-valid-parentheses) 知识点预告 栈的使用方法; 长度的计算方法; 数组的妙用; 题目要求 给定一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长的包含有效括号的子串的长度。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/longest-valid-pare...

博采众长,自成一派; 540

OGRE 3D----2. QGRE + QQuickView

将 OGRE(面向对象图形渲染引擎)集成到使用 QQuickView 的 Qt Quick 应用程序中,可以在现代灵活的 UI 框架中提供强大的 3D 渲染功能。本文将指导您如何在 QQuickView 环境中设置 OGRE。

charce_you的专栏 913

【LeetCode】32.Longest Valid Parentheses 最长合法序列

一、概述 输入一个只包含左括号和右括号的字符串,输出其最长合法序列的长度。 什么叫最长合法序列呢?就是在此序列中,不改变顺序,每一个左括号的后面总有一个右括号与之对应。例如 ((())) ()()() 但是 ))(( 这种不是。 二、分析 1、我的思路 最开始我的思路类似之前写Valid Parentheses一样,用栈保存左括号,有一个有括号就出栈一个。但是问题来了...

四轩茶屋 429

数据分析案例-2024 年全电动汽车数据集可视化分析

本数据集来源于Kaggle,原始数据集共有177866条数据,17个变量。该数据集显示了目前通过华盛顿州许可部 (DOL) 注册的电池电动汽车 (BEV) 和插电式混合动力电动汽车 (PHEV)。电池电动汽车 (BEV) 是一种全电动汽车,使用一个或多个电池来存储电能,为电机提供动力,并通过将车辆插入电源进行充电。插电式混合动力汽车 (PHEV) 是一种使用一个或多个电池为电动机提供动力的车辆;使用另一种燃料,例如汽油或柴油,为内燃机或其他推进源提供动力;并通过将车辆插入电源来充电。

m0_64336780的博客 1万+

C++软件调试与异常排查从入门到精通专栏介绍与文章汇总

根据近几年排查软件异常的实践与经验,系统地讲解了C++软件异常常见原因与常用排查方法,以图文并茂的方式给出具体的分析实例,带领大家逐步掌握C++软件异常排查的相关技术与要领。

dvlinker的技术专栏 23万+

leetcode记录32.Longest Valid Parentheses

leetcode记录32.Longest Valid Parentheses hard Runtime: 8 ms, faster than 98.79% of C++ online submissions for Longest Valid Parentheses. Memory Usage: 10.6 MB, less than 80.80% of C++ online submissions...

我的博客 204

情感分析在金融领域的应用:舆情影响股价预测

我们都知道,股价的波动受到多种因素的影响,而大众的情绪和看法就是其中很重要的一部分。我们在日常生活中都有根据别人的评价来判断事物好坏的经验,在金融市场里,舆情就像是大众对某家公司的集体评价,它能反映出市场参与者的情绪和预期。学习这方面的知识,能帮助投资者更好地把握市场动态,做出更明智的投资决策,无论是个人投资者还是金融机构的分析师,都能从中受益。有一天,你看到某家知名企业被曝光了严重的产品质量问题,新闻铺天盖地,股民们也都在热议纷纷,负面情绪弥漫。这时,你会不会觉得这家公司的股价可能要下跌了呢?

AI 原生应用开发的博客 1145

32 Longest Valid Parentheses

题目链接:https://leetcode.com/problems/longest-valid-parentheses/

再见了,过去的名字,新的奋斗开始啦! 581

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

32. Longest Valid Parentheses

Given a string containing just the characters '(' and ')', find the length of the longest valid (well-formed) parentheses substring. Example 1: Input: "(()" Output: 2 Explanation: The longest valid...

dreamjay1997的博客 270

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

LeetCode(32)Longest Valid Parentheses

题目如下: Given a string containing just the characters '(' and ')', find the length of the longest valid (well-formed) parentheses substring. For "(()", the longest valid parentheses substring is "()",

BUILD 2772

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Leetcode 32 Longest Valid Parentheses DP好题

就喜欢做这种想法题, 一开始的想法和之前做过的一道括号匹配差不多,用栈。 记录未匹配的括号位置,然后两两相减找到最大值,过了,但速度并不快。 在discuss中看到有人用DP,恍然大悟! dp[i]表示以当前位置为终点的最长长度,则只能在)处更新, 如果s[i-1-dp[i-1]]=='(',则说明当前位置可以和i-1-dp[i-1]位置匹配,dp[i]=dp[i-1]+2; 然后还要加上匹配位置之前的最长长度dp[i]+=dp[i-dp[i]];

无名山丘,崛起成峰 4093

leetcode 32. Longest Valid Parentheses

leetcode 32. Longest Valid Parentheses  奇了怪了,为什么java版本的算法TLE,c++版本的代码acc,难到是两种语言本身的区别:String 以及 stack操作 java版本的: package my; import java.util.Stack; public class Solution { public stat

独钓寒江雪 380

leetcode32——Longest Valid Parentheses

题目大意:给出由左右小括号组成的字符串,找出最长的合法字符串长度 分析:暴力解法或者dp。 暴力:枚举起始点,然后记录左右括号个数进行判断。 dp:状态:dp[i]——以下标i结尾的最长合法长度 初始化:dp[i]=0 结果:max{dp[i]} ...

tzyshiwolaogongya的博客 238

Leetcode——32. Longest Valid Parentheses

一、题目描述 Given a string containing just the characters '(' and ')', find the length of the longest valid (well-formed) parentheses substring. For "(()", the longest valid parentheses substring

parishong的博客 427
上一篇: 算法与设计分析作业(分治)
下一篇: LeetCode动态规划归纳
King来写代码
博客等级 码龄12年 68粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值