본문 바로가기
  • Adillete
【스터디노트】/▷TIL

코테 스터디 49일차 TIL + 오늘의 학습 키워드 스택2

by 아딜렛 2025. 7. 6.



- 오늘의 학습 키워드

스택, 역폴란드 표기법
- 공부한 내용 본인의 언어로 정리하기

숫자를 만나면-> 스택에 푸시

연산자를 만나면-> 스택에서 두개의 숫자를 팝하여 계산하고 , 그 결과를 다시 스택에 푸시한다.

 

수도코드

1. 빈 스택을 생성한다.
2. 토큰 배열을 하나씩 순회한다:
  토큰이 숫자라면-> 스택에 푸시
  토큰이 연산자라면-> 
  스택에서 두번째 연산자 팝
  스택에서 첫번째 연산자 팝
  계산 수행
  결과를 스택에 푸시
스택에 남은 마지막 값이 답


- 오늘의 회고
  - 어떤 문제가 있었고, 나는 어떤 시도를 했는지

스택은 순서대로 쌓이는데 연산자를 이용해서 두개의 숫자를 계산할수 있는지 의문이 들었다.


  - 어떻게 해결했는지

 

 

class Solution {
    public int evalRPN(String[] tokens) {
        
        Stack<Integer> stack = new Stack<>();

        for(String token:tokens ){
            if(token.equals("+")||
                token.equals("-")||
                token.equals("*")||
                token.equals("/")){
                    
                    int second= stack.pop();

                    int first = stack.pop();

                    int result=0;

                    switch(token){
                        case "+":
                        result = first+second;
                        break;
                        case "-":
                        result = first-second;
                        break;
                        case "*":
                        result = first*second;
                        break;
                        case "/":
                        result = first/second;
                        break;
                        
                    }
                    stack.push(result);
                }
               else{
                 stack.push(Integer.parseInt(token));
               }
        }
        return stack.pop();

    }
}


  - 무엇을 새롭게 알았는지
  - 내일 학습할 것은 무엇인지

https://neetcode.io/problems/daily-temperatures?list=neetcode150

 

NeetCode

 

neetcode.io

온도 이해 안됨

 

Car Fleet 

Largest Rectangle In Histogram 

 

NeetCode

 

neetcode.io

Largest Rectangle In Histogram