오늘의 과제
리트코드 medium으로 분류된 Removing Stars From a String 입니다.
이번 유형은 스택/큐 입니다.
문제
https://leetcode.com/problems/removing-stars-from-a-string/description/
먼저 문제 요구사항 요약입니다.
문자열이 주어지고 문자중 *를 만나면 왼쪽에서 가장 가까운 문자와 함께 *도 제거 후 반환하면 됩니다.
괄호 짝 맞추기와 같이 전형적인 스택 문제입니다. 후입선출의 자료구조 특성을 이용하여 문자를 계속 담다가 *를 만날때만 pop을 통해 문자를 제거해주면 되는 아주 간단한 문제입니다.
코드입니다.
class Solution {
public String removeStars(String s) {
var st = new Stack<Character>();
for (char c : s.toCharArray()) {
if (c != '*') {
st.add(c);
} else {
if(!st.isEmpty()) {
st.pop();
}
}
}
return st.stream().map(String::valueOf).collect(Collectors.joining());
}
}
배운 점
난이도가 좀 들쑥날쑥 한 것 같습니다. 이런 문제도 미디움으로 분류되어 있는 걸 보니 리트코드는 쉬운 미디움과 어려운 미디움의 편차가 굉장히 클 것 같네요. 미들러 문제도 다 풀 수 있는 수준은 아니었으나 추후 코테 스터디에서는 챌린저로 가보려 합니다.
오늘의 한줄평
어느 세월에 코테를 뚫나
'알고리즘 > 항해99' 카테고리의 다른 글
99클럽 코테 스터디 38일차 TIL + Heap(Seat Reservation Manager) (0) | 2024.06.26 |
---|---|
99클럽 코테 스터디 37일차 TIL + 스택/큐(Minimum Add to Make Parentheses Valid) (0) | 2024.06.25 |
99클럽 코테 스터디 35일차 TIL + 스택/큐(Flatten Nested List Iterator) (0) | 2024.06.23 |
99클럽 코테 스터디 34일차 TIL + 스택/큐(Find the Winner of the Circular Game) (0) | 2024.06.22 |
99클럽 코테 스터디 33일차 TIL + 정렬(Reordered Power of 2) (0) | 2024.06.21 |