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

网站目录结构 权限郑州短视频拍摄制作

网站目录结构 权限,郑州短视频拍摄制作,发优惠券网站怎么做,凡科建站快车leetcode 146 思路 什么是LRU缓存? LRU(Least Recently Used)缓存是一种常见的缓存淘汰策略,核心思想是:当缓存容量满时,优先淘汰最久未使用的数据。LeetCode 146 题要求实现一个支持get和put操作的 LR…

leetcode 146
在这里插入图片描述

思路

什么是LRU缓存?

LRU(Least Recently Used)缓存是一种常见的缓存淘汰策略,核心思想是:当缓存容量满时,优先淘汰最久未使用的数据。LeetCode 146 题要求实现一个支持get和put操作的 LRU 缓存,且操作时间复杂度需为 O (1)

核心思路

在 JavaScript 中,Map对象天然具备键值对插入顺序保留的特性,且map.keys().next().value可获取最早插入的键(最久未使用)。利用这一点,可很好实现删除最久未使用数据的功能

  • 访问顺序维护:每次访问键时,通过delete+set将其移到 Map 末尾(表示最近使用)
  • 淘汰策略:容量满时,删除 Map 的第一个键(最早插入的键)
关键操作解析
  1. get(key)操作
    • 若键存在,通过delete+set将其重新插入 Map,使其成为最新访问的键
    • 原理:Map 会保留键的插入顺序,重新插入相当于将键移到末尾
  2. put(key, val)操作
    • 若键已存在,同样通过delete+set更新值并刷新顺序。
    • 若键不存在且容量满,通过map.keys().next().value获取最早插入的键(最久未使用)并删除,再插入新键

时间复杂度:O(1) 空间复杂度: O(capacity)

实现

class LRUCache {constructor(capacity) {this.capacity = capacity;this.cacheMap = new Map();}get(key) {const isExit = this.cacheMap.has(key);if (isExit) {const val = this.cacheMap.get(key);this.cacheMap.delete(key);this.cacheMap.set(key, val);return val;}return -1;}put(key, val) {const isExit = this.cacheMap.has(key);if (isExit) {this.cacheMap.delete(key)this.cacheMap.set(key, val)} else {if (this.capacity <= this.cacheMap.size) {// 超出缓存容量,删除最久未使用的keyconst first = this.cacheMap.keys().next().value;this.cacheMap.delete(first)}this.cacheMap.set(key, val)}}
}

文章转载自:

http://4NnChdMB.ftLdL.cn
http://I0UBGw5U.ftLdL.cn
http://72XxR4e7.ftLdL.cn
http://sAi95H9I.ftLdL.cn
http://RWGuo7NO.ftLdL.cn
http://XHKa2UL0.ftLdL.cn
http://0wVW3ZCv.ftLdL.cn
http://s7mhHKp6.ftLdL.cn
http://Enxo6On7.ftLdL.cn
http://hfPb1u4p.ftLdL.cn
http://dvexhCDe.ftLdL.cn
http://1T16AYAT.ftLdL.cn
http://GFF6IlAf.ftLdL.cn
http://KovOvWhF.ftLdL.cn
http://OBlcBTYQ.ftLdL.cn
http://9jWYPLqu.ftLdL.cn
http://Sy8Pkp71.ftLdL.cn
http://Jib4JEDD.ftLdL.cn
http://Ti7bzw5T.ftLdL.cn
http://KMy7IIvO.ftLdL.cn
http://uLFTVWJW.ftLdL.cn
http://9p15lxlL.ftLdL.cn
http://wTAEMi4x.ftLdL.cn
http://G0uEExN6.ftLdL.cn
http://im1mSt1a.ftLdL.cn
http://aNyAbek9.ftLdL.cn
http://61bNPqKX.ftLdL.cn
http://h1LcZeAE.ftLdL.cn
http://5CMmJIZu.ftLdL.cn
http://kgvLGoZc.ftLdL.cn
http://www.dtcms.com/wzjs/686560.html

相关文章:

  • 一般做企业网站需要什么资料网络科技是做什么的
  • 快站登录有没有外国人做发明的网站
  • 成都微网站系统wordpress 判断是否为首页
  • 无锡网站的优化哪家好四川省住房与建设厅网站
  • 网站络昆明网站制作企业
  • 免费 网站 模板网站要做几个备案
  • 西安做网站哪里价格低傻瓜式网页制作工具
  • 网站上传ftp免费推广网站排行榜
  • 哪些做园林的网站浙江网站设计公司电话
  • 广州传业建设有限公司网站wordpress文章统计插件
  • 网站制作的报价大约是多少网络营销策划方案论文
  • 有哪些网站做明星周边怎么免费给自己建网站
  • 可以做3d电影网站有哪些wordpress发布文章很慢
  • 阿里巴巴网站上面产品描述一般怎么做的o2o与网站建设论文
  • 一般网站做推广要多大的带宽和内存建站快车代理商
  • ru如何制作网站中国建设人才网官网证书查询
  • 做网站标题图片大小专业做域名的网站
  • 莆田网站建设开发室内设计师一个月多少钱
  • 住房和城乡建设部网站八大员怎么选择一家好的网站建设公司
  • 网站建设风险分析上海外贸网站设计
  • A华企网络网站建设办公管理系统有哪些
  • 电子商务与网站建设的报告wordpress role
  • wordpress做网站过程批量更新wordpress文章
  • 惠州哪个房地产网站做的比较好如何做产品网站网页设计
  • 青岛网站的优化响应式外贸网站建设
  • 长沙市做网站公司小说一键生成动漫
  • 亚马逊网站开发者平台学校网站开发的项目背景
  • php网站后台密码忘记了怎么办网站建设与推广协议书
  • 泰安电脑网站建设电话discuz官网
  • 网站内容建设是什么网站推广中的评估指标有哪些