
Problem:
Given a string, valid if this is a valid parentheses.
分析
经典的栈题目。遇见左括号,推入栈;遇见右括号,进行匹配。最后返回栈的大小是否为0.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
public class { public boolean isValid(String s) { if (s.length() == 0) { return true; } Deque<Character> deque = new ArrayDeque<>(); for (int i = 0; i < s.length(); i++) { char cur = s.charAt(i); if (deque.isEmpty()) { deque.push(cur); } else if (cur - deque.peek() == 1 || cur - deque.peek() == 2) { deque.pop(); } else { deque.push(cur); } } return deque.isEmpty(); } }
|
近期评论