题解 | #括号序列#
括号序列
http://www.nowcoder.com/practice/37548e94a270412c8b9fb85643c8ccc2
import java.util.*; public class Solution { /** * * @param s string字符串 * @return bool布尔型 */ public boolean isValid (String s) { // write code here if(s == null || s.length() == 0) return true; char[] cc = s.toCharArray(); Stack<Character> st = new Stack<>(); for(int i = 0; i < s.length(); ++i){ char c = cc[i]; char p = ' '; switch(c){ case '(': st.push(c); break; case '[': st.push(c); break; case '{': st.push(c); break; case ')': if(st.size() == 0){ return false; } p = st.pop().charValue(); if(p == '('){ break; }else{ return false; } case ']': if(st.size() == 0){ return false; } p = st.pop().charValue(); if(p == '['){ break; }else{ return false; } case '}': if(st.size() == 0){ return false; } p = st.pop().charValue(); if(p == '{'){ break; }else{ return false; } } } if(st.size() == 0){ return true; }else{ return false; } } }