首页 > 代码库 > LeetCode Valid Parentheses

LeetCode Valid Parentheses

Given a string containing just the characters ‘(‘‘)‘‘{‘‘}‘‘[‘ and ‘]‘, determine if the input string is valid.

The brackets must close in the correct order, "()" and "()[]{}" are all valid but "(]" and "([)]" are not.

 

 1 public class Solution { 2     public boolean isValid(String s) { 3         if (s.equals("")) { 4             return true; 5         } 6          7         Stack<Character> stack=new Stack<>(); 8         stack.push(‘s‘); 9         for (char c : s.toCharArray()) {10             if (c==‘(‘ || c==‘[‘ || c==‘{‘) {11                 stack.push(c);12             }else {13                 if (c==‘)‘ && stack.pop()!=‘(‘) {14                     return false;15                 }16                 if (c==‘]‘ && stack.pop()!=‘[‘) {17                     return false;18                 }19                 if (c==‘}‘ && stack.pop()!=‘{‘) {20                     return false;21                 }22             }23         }24         if (stack.pop()!=‘s‘) {25             return false;26         }27         return true;28     }29 }

 

LeetCode Valid Parentheses