LeetCode刷题(20)

来源:互联网 发布:天谕美女捏脸数据 编辑:程序博客网 时间:2024/06/10 16:19

Longest Valid Parentheses
在一个由”(”、”)”组成的字符串中,寻找最长匹配长度
本题的关键在于要记住匹配序列之前的位置,pos用来记录这一数据

class Solution(object):    def longestValidParentheses(self, s):        """        :type s: str        :rtype: int        """        pos = []        n = len(s)        res = 0        for i in range(n):            if s[i] == '(':                pos.append(i)            else :                if len(pos) and s[pos[-1]] == '(':                    pos.pop()                    pre  = -1                    if len(pos):                        pre = pos[-1]                    res = i-pre if i-pre> res else res                else:                    pos.append(i)        return res
原创粉丝点击