这道题双重循环的“暴力”解法,显示超时。
有两种方法,都是从后往前计算的。
法一:利用倒叙遍历,同时用一个next数组维护当前温度的索引值,用一个变量tempIndex维护大于当前温度的所有温度中,索引值最小的那个。
法二:利用栈,也是倒叙遍历。栈是维护一个大于当前温度的集合,栈顶元素是第一个大于该当前温度的索引。如果当前温度大于栈顶温度就弹栈,直到栈顶元素,是大于当前温度的。如果栈为空,说明没有元素比他大,返回0,否则返回栈顶元素与 当前温度索引的差值
题目 code这道题双重循环的“暴力”解法,显示超时。
有两种方法,都是从后往前计算的。
法一:利用倒叙遍历,同时用一个next数组维护当前温度的索引值,用一个变量tempIndex维护大于当前温度的所有温度中,索引值最小的那个。
法二:利用栈,也是倒叙遍历。栈是维护一个大于当前温度的集合,栈顶元素是第一个大于该当前温度的索引。如果当前温度大于栈顶温度就弹栈,直到栈顶元素,是大于当前温度的。如果栈为空,说明没有元素比他大,返回0,否则返回栈顶元素与 当前温度索引的差值
题目 code本文标题:leetcode-每日温度
本文链接:https://www.haomeiwen.com/subject/bmedwhtx.html
网友评论