[leetcode] 2309번 : Removing Stars From a String

James·2023년 11월 6일

코딩 테스트

목록 보기
32/41
post-thumbnail

문제

https://leetcode.com/problems/removing-stars-from-a-string/description/?envType=study-plan-v2&envId=leetcode-75

풀이

[leetcode] 2309 : Removing Stars From a String 🥈(Medium)
⏰ 걸린 시간 : 15분

  • 알고리즘 유형 : [스택]

✔️ [문제 요약]
0. 을 만나면 바로 왼쪽의 값과 함께 뺀다.
1. 마지막에 모든
과 뺀 왼쪽의 값들을 제거하고 결과값 출력

✔️ [문제 풀이]
0. 새로운 arr_str 리스트를 만든다.
1. s를 순회하면서 모든 값들을 arr_str에 넣는다.
2. 이때 s의 값 중 '*'을 만나면 arr_str값중 맨 마지막 값을 pop한다.

코드(code)

class Solution:
    def removeStars(self, s: str) -> str:
        arr_str = []
        for element in s:
            if element == '*':
                arr_str.pop()
            else:
                arr_str.append(element)

        return ''.join(arr_str)

회고

시간 초과가 발생한 코드는 깃허브에 올려 놨습니다.
단순히 이중 for 문을 통해 해결해보려 했지만, O(N^2)이라는 시간복잡도를 갖고 있기 때문에 시간초과 발생

profile
의미있는 성장의 태도, 긍정적인 사고를 지닌 Deveolper

0개의 댓글