码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode-32-最长有效括号

时间:2020-07-05 00:18:58      阅读:66      评论:0      收藏:0      [点我收藏+]

标签:solution   位置   ==   The   ret   pre   动态规划   ges   max   

题目描述:

技术图片

 

方法一:动态规划 O(n) O(n)

class Solution:
    def longestValidParentheses(self, s: str) -> int:
        n = len(s)
        if n==0:return 0
        dp = [0]*n
        for i in range(len(s)):
            # i-dp[i-1]-1是与当前)对称的位置
            if s[i]==) and i-dp[i-1]-1>=0 and s[i-dp[i-1]-1]==(:
               dp[i]=dp[i-1]+dp[i-dp[i-1]-2]+2
        return max(dp)   

方法二:栈O(n)O(1)

方法三:正逆向结合 O(n) O(1)

 

leetcode-32-最长有效括号

标签:solution   位置   ==   The   ret   pre   动态规划   ges   max   

原文地址:https://www.cnblogs.com/oldby/p/13237162.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!