Java Bracket
import java.util.ArrayDeque;
import java.util.Deque;
public class Solution {
public static int bracket(String s) {
Deque<Character> stack = new ArrayDeque<>();
for (char v : s.toCharArray()) {
switch (v) {
case ')':
if (stack.isEmpty() || stack.pop() != '(') {
return 0;
}
break;
case ']':
if (stack.isEmpty() || stack.pop() != '[') {
return 0;
}
break;
case '}':
if (stack.isEmpty() || stack.pop() != '{') {
return 0;
}
break;
default:
stack.push(v);
break;
}
}
return stack.isEmpty() ? 1 : 0;
}
}
This uses a simple stack approach: open brackets go in, matching closing brackets pop them out.