当前位置:网站首页>每日一题-最长有效括号-0724
每日一题-最长有效括号-0724
2022-08-05 05:17:00 【菜鸡程序媛】
题目
给你一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长有效(格式正确且连续)括号子串的长度。
思路
- 括号匹配题目优先从栈的角度切入,本题中需要找到最长的括号子串的长度,通过数组的下标进行匹配
- 优先入栈一个-1的下标,作为栈底的元素(保证栈不会空)
- 遇到左括号的时候入栈,右括号的时候先弹出当前的栈顶元素,如果这个时候栈非空,证明之前入栈过左括号,满足括号对的前提要求;如果是空的,右括号的下标入栈,保证栈不会是空的,还有一点就是后面有满足要求的括号对的时候,作为栈顶下标元素计算当前子串的长度
- 最后通过sum不断迭代,更新当前的最大值
代码
class Solution {
public int longestValidParentheses(String s) {
if(s == null || s.length() <= 0)
return 0;
Stack<Integer> stack = new Stack<>();
int sum = 0;
//站岗
stack.push(-1);
for(int i = 0; i < s.length(); i ++){
if(s.charAt(i) == '('){
stack.push(i);
}else{
stack.pop();
if(stack.isEmpty()){
stack.push(i);
}else{
sum = Math.max(sum, i - stack.peek());
}
}
}
return sum;
}
}
边栏推荐
猜你喜欢
LeetCode刷题之第24题
Tensorflow steps on the pit notes and records various errors and solutions
[Pytorch study notes] 9. How to evaluate the classification results of the classifier - using confusion matrix, F1-score, ROC curve, PR curve, etc. (taking Softmax binary classification as an example)
[Intensive reading of the paper] R-CNN's Bounding box regression problem is detailed
CVPR 2022 | 70% memory savings, 2x faster training
Facial Motion Capture 调研
基于STM32F407的一个温度传感器报警系统(用的是DS18B20温度传感器,4针0.96寸OLED显示屏,并且附带日期显示)
MSRA proposes extreme masking model ExtreMA for learning instances and distributed visual representations
深度学习系列(一)简介、线性回归与成本函数
[Database and SQL study notes] 9. (T-SQL language) Define variables, advanced queries, process control (conditions, loops, etc.)
随机推荐
5G中切片网络的核心技术FlexE
网络通信及相关函数介绍
电子产品量产工具(2)- 输入系统实现
tensorflow的session和内存溢出
MSRA proposes extreme masking model ExtreMA for learning instances and distributed visual representations
原来何恺明提出的MAE还是一种数据增强
教你如何封装功能组件和页面组件
用GAN的方法来进行图片匹配!休斯顿大学提出用于文本图像匹配的对抗表示学习,消除模态差异!
二、自动配置之底层注解
framebuffer应用编程及文字显示(2)
伪RTOS-ProroThread在CH573芯片上的移植
Redis设计与实现(第三部分):多机数据库的实现
【ts】typescript高阶:分布式条件类型
【ts】typescript高阶:条件类型与infer
C语言入门笔记 —— 函数(1)
吞吐?带宽?傻傻分不清楚
【shell编程】第二章:条件测试语句
A deep learning code base for Xiaobai, one line of code implements 30+ attention mechanisms.
1008 数组元素循环右移问题 (20 分)
【22李宏毅机器学习】课程大纲概述