Home leetCode Day44
Post
Cancel

leetCode Day44

Daily Temperatures

題目:

1
有一個數字陣列,代表了每天的溫度,返回隔k天之後氣溫比較高該天高的陣列,如果沒有比較高的溫度,天數為0

解法:

1
用stack把之前的idx存起來,在跟現在的比大小,就可以找出k天
code

func dailyTemperatures(temperatures []int) []int {
    ans := make([]int, len(temperatures))
    stack := make([]int, len(temperatures))
    top := -1

    for i := 0; i < len(temperatures); i++ {
        for top > -1 && temperatures[i] > temperatures[stack[top]] {
            idx := stack[top]
            ans[idx] = i - idx
            top--
        }
        top++
        stack[top] = i
    }

    return ans
}
This post is licensed under CC BY 4.0 by the author.

Trending Tags