import java.util.Stack; /** * @author chengxy * @date 2018/6/29 14:10 * 有效的括号 https://leetcode-cn.com/problems/valid-parentheses/description/ */ public class DemoTest0629 { public static void main(String[] args) { boolean valid = isValid("){"); System.out.println(valid); } public static boolean isValid(String s) { if (s == null || "".equals(s)) { return true; } if(s.length()%2 != 0){ return false; } Stack stack = new Stack(); for (int i = 0; i < s.length(); i++) { String s1 = String.valueOf(s.charAt(i)); String pop; if ("(".equals(s1) || "{".equals(s1) || "[".equals(s1)) { stack.push(s1); } else if (")".equals(s1)) { if (stack.size()<1){ return false; }else { pop = (String) stack.pop(); } if (!"(".equals(pop)) { return false; } } else if ("}".equals(s1)) { if (stack.size()<1){ return false; }else { pop = (String) stack.pop(); } if (!"{".equals(pop)) { return false; } } else if ("]".equals(s1)) { if (stack.size()<1){ return false; }else { pop = (String) stack.pop(); } if (!"[".equals(pop)) { return false; } } } if (!stack.empty()){ return false; } return true; } }
leetCode 20.有效的括号_java
最新推荐文章于 2023-01-11 15:57:15 发布