Leetcode 32 最长有效括号 Java

Leetcode 32 最长有效括号


因为我真的很不擅长做DP题,所以想偷懒能不用就不用。结果这道题被我找到了某位大神的神仙做法,记录一下 etCode 32 Longest Valid Parentheses(最长合法的括号组合)

import java.util.*;
class Solution {
    public int longestValidParentheses(String s) {
        int left=0,right=0,max=0;
        for(int i=0;i<s.length();i++)
        {
            if(s.charAt(i)=='(') left++;
            else right++;
            if(left==right) max=Math.max(max,left*2);
            if(right>left) left=right=0;
        }
        left=0;
        right=0;
        for(int i=s.length()-1;i>=0;i--)
        {
            if(s.charAt(i)=='(') left++;
            else right++;
            if(left==right) max=Math.max(max,left*2);
            if(right<left) left=right=0;
        }
        return max;
    }
}

你可能感兴趣的:(Leetcode)