当前位置: 首页 > news >正文

国外做的好的电商网站推荐广告制作公司起名

国外做的好的电商网站推荐,广告制作公司起名,下列不属于网站开发技术的是,免费问题咨询146. LRU 缓存机制 运用你所掌握的数据结构#xff0c;设计和实现一个 LRU (最近最少使用) 缓存机制 。 实现 LRUCache 类#xff1a; LRUCache(int capacity) 以正整数作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中#xff0c;则返回…146. LRU 缓存机制 运用你所掌握的数据结构设计和实现一个 LRU (最近最少使用) 缓存机制 。 实现 LRUCache 类 LRUCache(int capacity) 以正整数作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中则返回关键字的值否则返回 -1 。 void put(int key, int value) 如果关键字已经存在则变更其数据值如果关键字不存在则插入该组「关键字-值」。当缓存容量达到上限时它应该在写入新数据之前删除最久未使用的数据值从而为新的数据值留出空间。 进阶你是否可以在 O(1) 时间复杂度内完成这两种操作 示例 输入 [“LRUCache”, “put”, “put”, “get”, “put”, “get”, “put”, “get”, “get”, “get”] [[2], [1, 1], [2, 2], [1], [3, 3], [2], [4, 4], [1], [3], [4]] 输出 [null, null, null, 1, null, -1, null, -1, 3, 4] 解释 LRUCache lRUCache new LRUCache(2); lRUCache.put(1, 1); // 缓存是 {11} lRUCache.put(2, 2); // 缓存是 {11, 22} lRUCache.get(1); // 返回 1 lRUCache.put(3, 3); // 该操作会使得关键字 2 作废缓存是 {11, 33} lRUCache.get(2); // 返回 -1 (未找到) lRUCache.put(4, 4); // 该操作会使得关键字 1 作废缓存是 {44, 33} lRUCache.get(1); // 返回 -1 (未找到) lRUCache.get(3); // 返回 3 lRUCache.get(4); // 返回 4 解题思路 基于链表和hashmap实现LRU 每次新增key的时候如果key已经存在了就将key移到链表头并且修改value。如果key不存在直接将key插入队头。如果已经超出LRU的大小就删除链表尾部的key每次get的时候如果key存在就将这个key移到链表头并且返回 代码 type LRUCache struct {capacity inthead *Nodetail *Nodecache map[int]*Node } type Node struct {pre *Nodenext *Nodekey intval int }var c LRUCache func Constructor(capacity int) LRUCache {c.cache map[int]*Node{}c.capacitycapacityc.headNode{val: -1}c.tailNode{val: -1}c.head.nextc.tailc.tail.prec.headreturn c }func (lru *LRUCache) Get(key int) int {node,ok : c.cache[key]if ok {p,n : node.pre,node.nextp.nextnn.prepth:lru.head.next//插入头节点lru.head.nextnodenode.prelru.headnode.nextthth.prenodereturn node.val}return -1 }func (lru *LRUCache) Put(key int, value int) {if lru.Get(key)!-1 {lru.head.next.valvaluereturn}if lru.capacity0 {delete(lru.cache,lru.tail.pre.key)tl : lru.tail.pre.pretl.nextlru.taillru.tail.pretllru.capacity}node : Node{key: key,val: value,next: lru.head.next,pre: lru.head,}lru.head.next.prenodelru.head.nextnodelru.cache[key]nodelru.capacity-- }/*** Your LRUCache object will be instantiated and called as such:* obj : Constructor(capacity);* param_1 : obj.Get(key);* obj.Put(key,value);*/
http://www.zqtcl.cn/news/268820/

相关文章:

  • 酒店和网站对接如何做开发网站那个好
  • 北京建设信源咨询有限公司网站快对小程序入口
  • 湖北人工智能建站系统软件城乡建设官网
  • 广东模板建站平台设计网站
  • 晋江市住房和城乡建设网站二进制可以做网站是吗
  • 企业网站优化的方式网站开发 -(广告)
  • 素材解析网站搭建wordpress 提问
  • 域名解析网站安卓android系统下载
  • 相亲网站做推广的照片是谁广告优化师前景
  • 营销导向的网站建设的主要流程陕煤建设集团网站
  • 电商网站销售数据分析网页美工设计实训报告
  • 百度新网站收录wordpress免刷新插件
  • 如何做好网站外链c#+开发网站开发
  • 展示型网站报价网站目录创建下载链接
  • cloudflare做侵权网站建设网站需要什么知识
  • 软装设计公司名称怎样给网站做优化
  • 如何判断网站是用什么程序做的云南网站建设公司
  • 清远市建设局官方网站软件开发工程师发展前景
  • 韩国做hh网站图片转链接生成器在线
  • 有凡客模版怎么建设网站百度网盘在线观看资源
  • 网站关键字统计龙岩龙硿洞
  • 成都哪个网站建设比较好建设工程交易服务中心
  • 怎么做好网站推广小笨鸟跨境电商平台
  • 建立一个网站需要多少钱?制作ppt模板的软件
  • 百度 手机网站 友好性青岛谷歌优化
  • 免费的200m网站空间谷歌建站哪家好
  • 哪些平台可以建立网站2345浏览器网页版入口中文版
  • 网站设计与网页制作培训页面设计实训报告
  • 网站建设团队精神深圳福田最新消息今天
  • 网站制作主要公司哪个软件购物便宜又好