我正在尝试使用两个指针来解决以下问题 给定一个整数数组温度代表每日温度,返回一个数组答案,使得答案[i]是在第i天之后您必须等待以获得更温暖的温度的天数。如果未来没有一天可以这样做,则保留answer[i] == 0。
以下是我的代码:
class Solution(object):
def dailyTemperatures(self, temperatures):
l = 0
r = 1
res = []
while r < len(temperatures):
if temperatures[r] > temperatures[l]:
diff = temperatures[r] - temperatures[l]
res.append(diff)
l += 1
r += 1
else:
diff = temperatures[l] - temperatures[r]
res.append(diff)
l += 1
r += 1
return res
因此对于以下输入;温度 = [73,74,75,71,69,72,76,73] ,它应该显示输出:[1,1,4,2,1,1,0,0] 但对于我的代码,它显示输出= [1,1,4,2,3,4,3]。 我的方法哪里出了问题?
您的代码计算温度之间的差异,但问题要求等待温度升高的天数。因此,您应该计算指数差,而不是计算温度差。