20. 有效的括号

Posted xiyangchen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20. 有效的括号相关的知识,希望对你有一定的参考价值。

给定一个只包括 ‘(‘,‘)‘,‘‘,‘‘,‘[‘,‘]‘ 的字符串,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/valid-parentheses

 1 package stack_queue;
 2 
 3 import java.util.Stack;
 4 
 5 public class ValidParentheses 
 6     public boolean isValid(String s) 
 7         Stack<Character> left = new Stack<>();
 8         char[] arrchar = s.toCharArray();
 9         for(char c : arrchar) 
10             if(c == ‘(‘ || c == ‘[‘ || c == ‘‘) 
11                 left.push(c); 
12              else 
13                 if(left.isEmpty()) 
14                     return false; 
15                 
16                 char l = left.pop();
17                 boolean res1 = (l == ‘(‘) && (c == ‘)‘);
18                 boolean res2 = (l == ‘[‘) && (c == ‘]‘);
19                 boolean res3 = (l == ‘‘) && (c == ‘‘);
20                 if(res1 || res2 || res3) 
21                     continue; 
22                 else 
23                     return false;
24                 
25             
26         
27         return left.isEmpty();
28     
29 

 

以上是关于20. 有效的括号的主要内容,如果未能解决你的问题,请参考以下文章

力扣20-有效的括号&力扣22-括号生成

LeetCode - 20 :有效的括号

LeetCode:有效的括号20

leetcode-20.有效的括号

python(LeetCode20-有效的括号)

20. 有效的括号