Days Until a Warmer Temperature
Given a list of daily temperatures, determine how many days must pass after each day before a warmer temperature occurs. If no warmer future day exists, use 0 for that day.
Daily Temperatures
Implement the following method:
Find Waiting Days
List<Integer> dailyTemperatures(List<Integer> temperatures)
Return a list where the value at each index is the number of days until the next day with a strictly higher temperature.
Behavior Requirements
- Only a strictly higher temperature is considered warmer.
- For each day, use the earliest future day having a warmer temperature.
- Return
0 when no warmer future day exists.
- The returned list must have the same size as
temperatures.
Constraints
1 ≤ temperatures.size() ≤ 30,000
30 ≤ temperatures.get(i) ≤ 100
- Every temperature is an integer.
Examples
Example 1
dailyTemperatures(temperatures = [60, 62, 61, 65, 64])
Output: [1, 2, 1, 0, 0]
The first day waits one day for a warmer temperature. The second day waits two days, and the third day waits one day. The last two days have no warmer future day.
Example 2
dailyTemperatures(temperatures = [80, 79, 78])
Output: [0, 0, 0]
Temperatures continuously decrease, so no day has a warmer future day.
Example 3
dailyTemperatures(temperatures = [55, 55, 56, 55, 57])
Output: [2, 1, 2, 1, 0]
An equal temperature is not warmer. Each waiting period therefore ends only when a strictly higher temperature appears.
Example 4
dailyTemperatures(temperatures = [42])
Output: [0]
A single day has no future temperature to compare against.