Files
js-practice/src/array/daily-temperatures.js
2020-06-11 15:33:28 +08:00

19 lines
430 B
JavaScript

/**
* @param {number[]} T
* @return {number[]}
*/
export const dailyTemperatures = function (T) {
const len = T.length
const ans = new Array(len).fill(0)
const stack = []
for (let i = 0; i < len; i++) {
const temperature = T[i]
while (stack.length && temperature > T[stack[stack.length - 1]]) {
const prevIndex = stack.pop()
ans[prevIndex] = i - prevIndex
}
stack.push(i)
}
return ans
}