LeetCode - The World's Leading Online Programming Learning Platform
문제 이해
가장많은 중첩 괄호의 수를 구하여 반환
문제 풀이
‘(’일 때 push, ‘)’일 떄 pop
stack의 size = 중첩된 ‘(’의 개수
Math.max(a, b)를 이용해 가장 많은 중첩 수를 변수에 저장 후 값을 return
class Solution {
public int maxDepth(String s) {
//Stack에 가장 많은 '('가 존재할 때
Stack<Character> st = new Stack<>();
int depth = 0;
for(int i = 0; i < s.length(); i++){
char c = s.charAt(i);
if(c == '(') {
st.push(c);
depth = Math.max(depth, st.size());
}
if(c == ')') {
st.pop();
}
}
return depth;
}
}
'Algorithm > leetcode' 카테고리의 다른 글
[leetcode]1544.Make The String Great (0) | 2023.08.31 |
---|---|
[leetcode]1074.Remove All Adjacent Duplicates In String (0) | 2023.08.30 |
[leetcode] 1021.Remove Outermost Parentheses (0) | 2023.08.28 |
[leetcode] 844.Backspace String compare (0) | 2023.08.27 |
[leetcode] 155.Min Stack (0) | 2023.08.26 |