from collections import OrderedDict
class Solution:
def LRU(self , operators , k ):
ret = [] od = OrderedDict() for opt in operators: if opt[0] == 1: if len(od) < k: od[str(opt[1])] = opt[2] else: od.pop(list(od.keys())[0]) od[str(opt[1])] = opt[2] else: if str(opt[1]) in od: if len(od) <= k: ret.append(od.get(str(opt[1]))) od.move_to_end(str(opt[1])) else: od.pop(list(od.keys())[0]) od[str(opt[1])] = opt[2] ret.append(od.get(str(opt[1]))) else: ret.append(-1) return ret
用OrderedDict做这个很适合吧 不知有大神指教更简单的解法没