LeetCode19 判断括号生成

image-20230318221109936

ans:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

class Solution {

// 栈解决 利用先进后出的原理 及取反比较
public boolean isValid(String s) {
if("".equals(s) || s.length() == 0){
return false;
}
int length = s.length();



Stack<Character> stack = new Stack();
for(char c : s.toCharArray()){
if(c == '('){
stack.push(')');
}else if(c=='{')
stack.push('}');
else if(c=='[')
stack.push(']');
else if (stack.empty()||c!=stack.pop()){
return false;
}
}
if(stack.empty()){
return true;
}

return false;


}

}

__END__