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

绑定网站网站建设高端公司

绑定网站,网站建设高端公司,网站优化模板,云服务器ecs搭建网站OrderedDict 实现 Least Recently used(LRU)缓存 引言正文 引言 LRU 缓存是一种缓存替换策略,当缓存空间不足时,会移除最久未使用的数据以腾出空间存放新的数据。LRU 缓存的特点: 有限容量:缓存拥有固定的…

OrderedDict 实现 Least Recently used(LRU)缓存

  • 引言
  • 正文

引言

LRU 缓存是一种缓存替换策略,当缓存空间不足时,会移除最久未使用的数据以腾出空间存放新的数据。LRU 缓存的特点:

  1. 有限容量:缓存拥有固定的容量,当容量满时,需要移除旧数据。
  2. 淘汰策略:将最久未使用的缓存项移除。
  3. 快速访问:访问,插入,删除的复杂度位 O(1)。

本文将介绍 OrderedDict 实现 Least Recently used(LRU)缓存的方法。

正文

from collections import OrderedDictclass LRUCache:def __init__(self, capacity: int):self.cache = OrderedDict()self.capacity = capacitydef get(self, key: str) -> int:if key not in self.cache:return -1self.cache.move_to_end(key)return self.cache[key]def put(self, key: str, value: int) -> None:if key in self.cache:self.cache.move_to_end(key)self.cache[key] = valueif len(self.cache) > self.capacity:self.cache.popitem(last=False)if __name__ == '__main__':lru = LRUCache(2)lru.put('a', 1)lru.put('b', 2)print(lru.get('a'))  # 1lru.put('c', 3)print(lru.get('b'))  # -1

当使用 print(lru.get('a')) 语句输出结果时,键值对 'a':1 会被放在 OrderedDict 最后的位置,lru.put('c', 3) 会导致位于开始位置的元素 'b':2 被删除。当我们再次使用 print(lru.get('b')) 访问 'b':2 元素时会得到返回值 -1 提示我们当前缓存中已经不存在该元素。

如果大家觉得有用,就点个赞让更多的人看到吧~

http://www.qdjiajiao.com/news/11055.html

相关文章:

  • wordpress 响应式图片seo行业网
  • 网站建设中可能出现的问题seo服务商
  • 情公司做的网站重庆森林经典台词截图
  • 网站制作高手seo怎么学在哪里学
  • 公司网站备案网站名称有什么用有哪些推广平台和渠道
  • 怎么建立一个小说网站新站整站快速排名
  • 特色的岑溪网站开发军事最新消息
  • 织梦做的网站怎么添加关键词乔拓云网站注册
  • 推广做网站莱芜宣传方式
  • 站长之家是什么网站网站seo排名优化价格
  • 怎么找网站建设公司东莞seo外包
  • 高水平高职建设网站厦门seo收费
  • 注册一个空壳公司养着长沙网站seo公司
  • wordpress写的网站互联网营销师培训班
  • 网站建设与服务费是什么服务官网seo
  • 做网站常用的插件磁力吧ciliba
  • wordpress v4.9.5seo优化方案案例
  • 宁波营销型网站建设优化建站厦门谷歌推广
  • 免费成品网站那里好上海广告公司
  • 互联网营销方法有哪些企业站seo报价
  • 做网站卖水果哪里进货合肥网站推广助理
  • 安徽网站建设详细教程网站运营推广方案
  • 提供视频下载的网站百度收录网站提交入口
  • 网站排名超快如何让百度搜索到自己的网站
  • 制作只有一张图片的网站公司注册流程
  • 北京州网站建设公司网上推广平台
  • 手机怎样建个人网站私密浏览器免费版
  • 长沙 外贸网站建设公司排名苏州网站优化公司
  • 淘宝客怎么做网站推广整站优化案例
  • wish网站应该怎么做谷歌推广费用