[LeetCode] 739. Daily Temperatures, Medium

2025. 4. 2. 15:38·CodingTest/LeetCode
반응형

1. 문제

  • 매 일 측정한 온도 배열 temperatures가 주어질 때, 각 요소 별로 다음으로 온도가 높아지기 까지 며칠이 걸리는 지 계산한 배열을 반환하라.

2. 해결

function dailyTemperatures(temperatures: number[]): number[] {
    const result = new Array(temperatures.length).fill(0);
    const stack = [];

    for(let i =0; i< temperatures.length; i++) {
        while(stack.length > 0 && temperatures[i] > temperatures[stack[stack.length-1]]) {
            const prevIndex = stack.pop();
            result[prevIndex] = i - prevIndex;
        }
        stack.push(i);
    }

    return result;
};
  • 일단 못풀었다.
  • 문제 풀이에 단조 스택? 이란 걸 사용해야 한다고 한다. 단조 스택은 오름차순 또는 내림 차순으로 스택의 요소가 유지 되는 것을 말한다.
  • 보통 일정 범위 내에서 ~의 다음 수 중 가장 큰/작은 수를 찾을 때 많이 쓰인다. 이 문제 역시 특정 날짜부터 다음 날 중 자신보다 큰 온도를 가지는 날짜를 구하는 것.
저작자표시 (새창열림)
'CodingTest/LeetCode' 카테고리의 다른 글
  • [LeetCode] 133. Clone Graph, Medium
  • [LeetCode] 150. Evaluate Reverse Polish Notation, Medium
  • [LeetCode] 20. Valid Parentheses, Easy
  • [LeetCode] 155. Min Stack, Medium
뜸부깅
뜸부깅
코딩에 대한 여러 개인적인 생각을 정리하고 공부를 하는 공간입니다!!
  • 뜸부깅
    코오오딩
    뜸부깅
  • 전체
    오늘
    어제
    • Note (429)
      • Skill (31)
        • Java & Spring (9)
        • Javascript & HTML & CSS (0)
        • React (0)
        • Next.js (22)
      • CodingTest (389)
        • 백준 온라인 저지(BOJ) (140)
        • 프로그래머스(Programmers) (79)
        • LeetCode (170)
      • Algorithm & Data Structure (6)
      • [Project] 포트폴리오 (3)
        • Front end (3)
        • Back end (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    boj1427
    백준1260
    leetcode 2236
    next 14
    백준1427
    프로그래머스
    Java
    Easy
    알고리즘
    medium
    component-scan
    boj2108
    백준7576
    meidum
    백준
    백준2751
    TypeScript
    자바
    백준7576자바
    BOJ
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
뜸부깅
[LeetCode] 739. Daily Temperatures, Medium
상단으로

티스토리툴바