题解 | #设计LRU缓存结构#
设计LRU缓存结构
http://www.nowcoder.com/practice/e3769a5f49894d49b871c09cadd13a61
export function LRU(operators: number[][], k: number): number[] { // write code here const map = new Map() let res = [] for (const v of operators) { if (v[0] == 1) { if (map.size == k) { map.delete(Array.from(map.keys())[0]) //此处牛客自带的ts编译器用不了[...map.keys()] } map.get(v[1]) ? map.delete(v[1]) : null map.set(v[1], v[2]) } else { if (map.get(v[1])) { res.push(map.get(v[1])) map.delete(v[1]) map.set(v[1], res[res.length - 1]) } else { res.push(-1) } } } return res }