FrontendInterviews.dev

Loading problem…

300. Daily Temperatures

Medium•
Acceptance: 85.71%
•
🔓3/3 Pro unlocks today

Given an array of integers temperatures represents the daily temperatures, return an array answer such that answer[i] is the number of days you have to wait after the ith day to get a warmer temperature.

If there is no future day for which this is possible, keep answer[i] == 0.

This is the canonical monotonic stack problem. Use a stack to track indices of days awaiting a warmer temperature.

Requirements

1. Basic Functionality

  • For each day, find how many days until a warmer temperature
  • Return 0 if no warmer day exists
  • Must be O(n) time complexity

Example Usage

dailyTemperatures([73,74,75,71,69,72,76,73]);
// [1,1,4,2,1,1,0,0]

Real-World Context

  • Weather forecasting: Predicting when temperatures will rise
  • Stock prices: Finding next higher price (Next Greater Element)
  • Task scheduling: Finding the next available time slot

Constraints

  • 1 <= temperatures.length <= 10^5
  • 30 <= temperatures[i] <= 100