LRUAlgorithm利用你掌握的数据结构,设计实现一个LRU(leastrecentlyused)缓存机制。它应该支持以下操作:获取数据get和写入数据put。获取数据get(key)-如果缓存中存在键(key),则获取键的值(始终为正),否则返回-1。写入数据put(key,value)-如果键不存在,写入数据。当缓存容量达到上限时,它应该在写入新数据之前删除最旧的未使用数据,从而为新数据腾出空间。functionLRUCache(max){this.cacheList=newMap()//使用Map的记录存储顺序来记录缓存this.max=max//设置可以缓存的最大值}LRUCache.prototype.get=function(key){/***判断当前key是否存在,如果存在则删除当前key键值对,并在末尾添加新的key值*保留最近使用的*否则返回-1if未找到*/if(this.cacheList.has(key)){letvalue=this.cacheList.get(key)this.cacheList.delete(key)this.cacheList.set(key,value)返回this.cacheList。get(key)}else{return-1}}LRUCache.prototype.put=function(key,value){/***删除当前key,如果存在,删除成功返回true*设置一个新的key,value*否则继续下一步*/if(this.cacheList.delete(key)){this.cacheList.set(key,value)return}/***如果当前数组中没有当前key,比较当前缓存数量和最大缓存数量*如果有still缓存空间,直接添加key值*否则移除第一个添加的项,然后添加key值*/if(this.cacheList.size
