给定一个仅包含字符'('and')'的字符串,找到最长有效(良好的)括号的长度。
示例1:
示例2:
示例3:
笔记:
根据含义,只给出了一个只包含字符'('and')'的字符串以找到最长和有效的括号字符串的长度。
这个问题的主题非常简单。一旦我们看到这种类型的括号类型,解决方案基本上是确定的,即堆栈的使用,因为左右支架的混合物,我们使用堆栈的顶部元素和新的元素新元素。您可以做出良好的判断,并确定应保留括号或堆栈应熄灭。
在这里,我们正在寻找最长的法律字符串。根据常规想法,我们必须计算长度。我们必须知道,左边界和右边界必须是新的括号。左边界实际上是我们旅行过的左支架的索引,因此::
时间复杂性为O(n),空间复杂性为O(n)。
当然,由于这个问题是“最有价值的”类型的问题,因此我们还可以使用动态计划来解决它。定义dp [i]代表索引角色位置末尾的最长法律括号长度。
时间复杂性为O(n),空间复杂性为O(n)。
https://leetcode.com/prblems/longest-dalid-parenthesees/
您的支持是我最大的动力
原始:https://juejin.cn/post/7102218913135460389