Medium · Stack · spoken drill
Free AI LeetCode Communication Coach — Daily Temperatures
Monotonic stack of indices waiting for a warmer day; answer[i] is days to wait.
The problem
Given temperatures[i], return an array answer where answer[i] is the number of days you wait until a warmer temperature. If none, 0.
Example: temperatures = [73,74,75,71,69,72,76,73] → [1,1,4,2,1,1,0,0]
Monotonic stack — say indices, not values.
ans = [0] * len(temperatures)
stack = []
for i, t in enumerate(temperatures):
while stack and temperatures[stack[-1]] < t:
j = stack.pop()
ans[j] = i - j
stack.append(i)
return ansHow to explain it
1. Restate
Say the problem in your own words.
One or two sentences. Show you understood the input, the output, and the goal — not that you memorised the prompt.
2. Approach
Name the method before you code.
Brute force first if you need it, then the structure you will use: hash map, two pointers, stack, binary search.
3. Example
Walk one concrete input.
Pick small numbers. Say what you store, what you compare, and what you return. Interviewers follow an example more easily than abstract talk.
4. Time and space
One sentence each.
After the example, before you claim you are done. “Time is O(n) because we scan once. Space is O(n) for the map.”
5. Edge cases
Name at least one unusual input.
Empty input, duplicates, already sorted, overflow. Invite a follow-up: “I would also check …”
- “I keep a decreasing stack of indices.”
- “Each index is pushed and popped at most once.”
Practise out loud
3 free scored runs left this hour.
Problem · Medium
Given temperatures[i], return an array answer where answer[i] is the number of days you wait until a warmer temperature. If none, 0.
Example: temperatures = [73,74,75,71,69,72,76,73] → [1,1,4,2,1,1,0,0]
- 1Restate — Say the problem in your own words.
- 2Approach — Name the method before you code.
- 3Example — Walk one concrete input.
- 4Time and space — One sentence each.
- 5Edge cases — Name at least one unusual input.
Hit record. Short countdown, then 60–90 seconds. We score the five-step script — never pronunciation.
Recording needs Chrome or Edge. You can still type below.
Model spoken script (~75s)
1. Restate
For each day I need how many days until a strictly warmer temperature, or zero.
2. Approach
I keep a monotonic stack of indices with decreasing temperatures. When today is warmer, I pop and fill the wait.
3. Example
On 73 then 74, the wait for day 0 is 1. Later 76 resolves several cooler days at once.
4. Time and space
Time is O(n) because each index is pushed and popped at most once. Space is O(n).
5. Edge cases
I would check a strictly decreasing list — all zeros — and a single-day input.
Common mistakes when explaining Daily Temperatures
- Storing values instead of indices on the stack.
- Not saying each index is pushed and popped at most once.
Other problems
Easy · Hash map
Two Sum
Classic hash-map scan. Name brute force, then the map, walk [2,7,11,15] target 9, finish with O(n).
Medium · Hash map
Group Anagrams
Group strings by anagram signature — sorted key or 26-letter count — then walk one bucket.
Easy · Two pointers
Valid Palindrome
Two pointers from both ends; skip junk characters; compare lowercase letters.
Medium · Two pointers
3Sum
Sort, fix i, then two pointers for the pair that sums to −nums[i]. Deduplicate out loud.
Medium · Sliding window
Longest Substring Without Repeating Characters
Grow a window; when a duplicate appears, move the left edge past its last index.
Easy · Stack
Valid Parentheses
Stack story: push openers, pop on matching closer, empty stack at the end.
FAQ
Questions
More questions? Email us at contact@mocklyenglish.com.
Course: How to explain a LeetCode solution · Think out loud · Explain code out loud