我正在解决一个编程问题并卡在最后一块拼图上。
这是问题:https ://leetcode.com/problems/daily-temperatures/
我有一个排序的(值)字典,现在我想对字典进行 log(n) 复杂度搜索。这是我到目前为止编写的代码。
def dailyTemperatures(self, T):
if len(T) == 0:
return []
if len(T) == 1:
return [0]
R = [None] * len(T)
#create map, populate map
M = {}
for i in range(0, len(T)):
M[i] = T[i]
#sort map by value(temps)
MS = sorted(M.items(), key=lambda x: x[1])
for i in MS:
print(i[0], i[1])
for i in range(0,len(T)):
t = T[i] #base value for comparison
R[i] = 0
x = 0
# find smallest x for which temp T[x] > T[i]
# Dictionary is sorted for Temps
R[i] = x - i
return R
循环中的注释部分是我遇到麻烦的地方。我无法在任何地方找到可以搜索排序字典然后按键过滤的答案。
解决此问题的任何提示或新建议也将受到赞赏。
弑天下
相关分类