hyelie
hyelie
Hyeil Jeong
       
글쓰기    관리    수식입력
  • 전체보기 (495)
    • PS (283)
      • Algorithm (28)
      • PS Log (244)
      • Contest (6)
      • Tips (5)
    • Development (52)
      • Java (14)
      • Spring (23)
      • SQL (2)
      • Node.js (2)
      • Socket.io (3)
      • Study (4)
      • Utils (4)
    • DevOps (36)
      • Git (5)
      • Docker (4)
      • Kubernetes (2)
      • GCP (3)
      • Environment Set Up (8)
      • Tutorial (12)
      • Figma (2)
    • CS (74)
      • OOP (7)
      • OS (24)
      • DB (2)
      • Network (24)
      • Architecture (0)
      • Security (2)
      • Software Design (0)
      • Parallel Computing (15)
    • Project (15)
      • Project N2T (5)
      • Project ASG (0)
      • Project Meerkat (1)
      • Model Checking (7)
      • Ideas (2)
    • 내가 하고싶은 것! (34)
      • Plan (16)
      • Software Maestro (10)
      • 취준 (8)
hELLO · Designed By 정상우.
hyelie

hyelie

PS/PS Log

23.04.11. 풀었던 문제들

Leetcode 2390. Removing Stars From a String

 문제를 보면 stack을 쓰는 쉬운 문제라는 것을 깨달을 수 있다. 어제 풀었던 문제와도 같은 문제. 그러나 stack을 쓰면 O(n)만큼 쓰고, 또 그걸 string에 넣어야 하니까 O(2n)이 된다. 그래서 그냥 바로 string을 쓰면 된다. string에 push_back(또는 + 연산), pop_back 연산이 있기 때문이다.

// Runtime 68 ms Beats 95.74%
// Memory 25.9 MB Beats 57.75%

class Solution {
public:
    string removeStars(string s) {
        string answer = "";
        for(char c : s){
            if(c == '*'){
                answer.pop_back();
            }
            else{
                answer += c;
            }
        }
        return answer;
    }
};

 

시간복잡도

 s를 처음부터 끝까지 순회하므로 O(n). string에 push_back()이나 pop_back()하는 것은 O(1)이 걸린다. 따라서 O(n)

 

공간복잡도

 O(n) size의 answer string을 사용한다.

 

 

 

 

 

 

저작자표시 (새창열림)

'PS > PS Log' 카테고리의 다른 글

23.04.13. 풀었던 문제들  (0) 2023.04.13
23.04.12. 풀었던 문제들  (0) 2023.04.12
23.04.10. 풀었던 문제들  (0) 2023.04.10
23.04.09. 풀었던 문제들  (0) 2023.04.09
23.04.08. 풀었던 문제들  (0) 2023.04.08
    hyelie
    hyelie

    티스토리툴바