1 | 请根据每日 气温 列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置用 0 来代替。 |
暴力解法
1 | class Solution { |
栈中存放 $index$ ,如果当前元素小于栈顶元素,将元素入栈,否则,对栈中小于当前元素的元素出栈,并在结果的对应部分填写差值。
例如:
当 $i=0$ 时,单调栈为空,因此将 0 进栈。
$\textit{stack}=[0(73)]$
$\textit{ans}=[0,0,0,0,0,0,0,0]$
当 $i=1$ 时,由于 $74$ 大于 $73$,因此移除栈顶元素 $0$,赋值 $ans[0]:=1-0$,将 $1$ 进栈。
$\textit{stack}=[1(74)]$
$\textit{ans}=[1,0,0,0,0,0,0,0]$
单调栈
1 | class Solution { |
暴力解法
1 | class Solution { |
单调栈
1 | class Solution { |