lru design
@param operators int整型二维数组 the ops
@param k int整型 the k
@return int整型一维数组
class Solution:
def LRU(self , operators , k ):
# write code here
kv={}
rs=[]
for x in operators:
opt=x[0]
if opt==1:
if len(kv)>=k:
#如果缓存超过规定,则删除第一个键值对
kk=list(kv.keys())[0]
v=kv.pop(kk)
kv[x[1]]=x[2]
else:
if kv.get(x[1])==None:
rs.append(-1)
#找不到不用刷新缓存
else:
rs.append(kv[x[1]])
#能找到才刷新缓存
v=kv.pop(x[1])
kv[x[1]]=v
return rs