Offer 驾到,掘友接招!我正在参与2022春招系列活动-刷题打卡任务,点击查看活动详情。
一、题目描述:
给你一个只包含
'('和')'的字符串,找出最长有效(格式正确且连续)括号子串的长度。
来源:力扣(LeetCode) 链接:leetcode-cn.com/problems/lo…
二、思路分析:
设置start作为每次查找的分界点
三、AC 代码:
/**
* @param {string} s
* @return {number}
*/
var longestValidParentheses = function(s) {
let stack=[];
let res=0;
let start=0;
let len=s.length;
for(let i=0;i<len;i++){
if(s[i]==='(') stack.push(i);
else{
if(stack.length){
stack.pop();
let temp=stack.length==0?start:stack[stack.length-1]+1;
res=Math.max(res,i-temp+1);
}
else{
start=i+1;
}
}
}
return res;
};
四、总结:
利用栈