2026年LeetCode双周赛经典题目详解与算法解析.docxVIP

  • 0
  • 0
  • 约6.39千字
  • 约 18页
  • 2026-06-03 发布于福建
  • 举报

2026年LeetCode双周赛经典题目详解与算法解析.docx

第PAGE页共NUMPAGES页

2026年LeetCode双周赛经典题目详解与算法解析

第一题:字符串处理与模式匹配(3题,每题10分)

题目1:最长有效括号子串

问题描述:

给定一个由`(`和`)`组成的字符串`s`,返回其中最长的有效(括号正确匹配)子串的长度。有效括号子串是指由`(`和`)`组成的子串,其中每个`(`都有一个对应的`)`,且它们的位置一一对应。

示例:

输入:s=(()

输出:2

解释:()是最长的有效括号子串。

答案与解析:

python

deflongestValidParentheses(s:str)-int:

stack=[-1]#初始化栈,-1作为基准点

max_len=0

fori,charinenumerate(s):

ifchar==(:

stack.append(i)

else:

stack.pop()

ifnotstack:

stack.append(i)

else:

max_len=max(max_len,i-stack[-1])

returnmax_len

解析:

使用栈来记录括号的索引位置。初始化栈为`[-1]`,作为基准点。遍历字符串:

-遇到`(`时,将其索引压入栈。

-遇到`)`时,弹出栈顶元素。如果栈为空,则将当前索

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档