Longest Valid Parentheses (Java)
来源:互联网 发布:怎么看淘宝店 编辑:程序博客网 时间:2024/05/18 03:15
Given a string containing just the characters '('
and ')'
, find the length of the longest valid (well-formed) parentheses substring.
For "(()"
, the longest valid parentheses substring is "()"
, which has length = 2.
Another example is ")()())"
, where the longest valid parentheses substring is "()()"
, which has length = 4.
注意这道题的stack里面存的不是括号而是索引。这道题的标签中有动态规划,下次写注意一下动态规划的写法。
Source
public class Solution { public int longestValidParentheses(String s) {char a;Stack<Integer> st = new Stack<Integer>();//*****int p = 0;int cnt = 0;for(int i = 0; i < s.length(); i++){a = s.charAt(i);if(a == '('){st.push(i);}else if(a == ')'){if(st.size() == 0){ //也可以用isEmptyp = i + 1;}else{st.pop();if(st.isEmpty()){cnt = Math.max(i - p + 1, cnt);}else{cnt = Math.max(i - st.peek(), cnt);}} }}return cnt; }}
Test
public static void main(String[] args){ String s = "(()"; System.out.println(new Solution().longestValidParentheses(s)); }
0 0
- Longest Valid Parentheses Java
- Longest Valid Parentheses (Java)
- Longest Valid Parentheses Java
- [Leetcode] Longest Valid Parentheses (Java)
- [Java] LeetCode32 Longest Valid Parentheses
- [LeetCode][Java] Longest Valid Parentheses
- leetcode:Longest Valid Parentheses 【Java】
- LeetCode : Longest Valid Parentheses [java]
- Longest Valid Parentheses leetcode java
- [leetcode-32]Longest Valid Parentheses(java)
- (Java)LeetCode-32. Longest Valid Parentheses
- leetcode 32. Longest Valid Parentheses __ java
- [leetcode]32. Longest Valid Parentheses(Java)
- LeetCode: Longest Valid Parentheses
- LeetCode Longest Valid Parentheses
- LeetCode: Longest Valid Parentheses
- [Leetcode] Longest Valid Parentheses
- [leetcode]longest Valid Parentheses(!!)
- where 子语句复杂条件的标准形式
- 分治、栈与数据结构
- Ubuntu udev rules 设置方法
- 前台JSON字符串转换为JSON对象
- ViewPagerIndicator系列之--ViewPager+ActionBar+Fragment实现响应式可滑动Tab
- Longest Valid Parentheses (Java)
- mysql 下 计算 两点 经纬度 之间的距离 计算结果排序
- ACM 容斥原理
- gcc去掉dll导出函数多余的符号
- 纠正要求修改数据库NLS_LENGTH_SEMANTICS参数的错误要求
- javascript读书笔记2----使用原型进行扩展的一个需要注意的地方
- POJ 2976 Dropping tests(初遇0,1分数规化)
- Lintcode - Majority Number II
- Java异常机制Throwable