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

餐饮酒店网站怎么做西安 做网站

餐饮酒店网站怎么做,西安 做网站,网站服务器申请,做国际网站有用1.题目描述 2.思路 方法1:直接用Python封装好的数据结构OrderedDict(兼具哈希表与双向链表的数据结构)。 方法2:哈希表辅以双向链表。 3.代码(Python3) 方法1: class LRUCache(collections…

1.题目描述

2.思路

方法1:直接用Python封装好的数据结构OrderedDict(兼具哈希表与双向链表的数据结构)。

方法2:哈希表辅以双向链表。

3.代码(Python3)

方法1:

class LRUCache(collections.OrderedDict):def __init__(self, capacity: int):super().__init__()self.capacity = capacitydef get(self, key: int) -> int:if key not in self:return -1self.move_to_end(key)return self[key]def put(self, key: int, value: int) -> None:if key in self:self.move_to_end(key)self[key] = valueif len(self) > self.capacity:self.popitem(last=False)

方法2:

class DLinkedNode:def __init__(self, key=0, value=0):self.key = keyself.value = valueself.prev = Noneself.next = Noneclass LRUCache:def __init__(self, capacity: int):self.cache = dict()# 伪头和伪尾self.head = DLinkedNode()self.tail = DLinkedNode()self.head.next = self.tailself.tail.prev = self.headself.capacity = capacityself.size = 0def get(self, key: int) -> int:if key not in self.cache:return -1node = self.cache[key]self.move_to_head(node)return node.valuedef put(self, key: int, value: int) -> None:print(self.size, self.capacity)if key not in self.cache:node = DLinkedNode(key, value)self.cache[key] = nodeself.add_to_head(node)self.size += 1if self.size > self.capacity:removed = self.remove_tail()self.cache.pop(removed.key)self.size -= 1else:node = self.cache[key]node.value = valueself.move_to_head(node)def add_to_head(self, node):node.prev = self.headnode.next = self.head.nextself.head.next.prev = nodeself.head.next = nodedef remove_node(self, node):node.prev.next = node.nextnode.next.prev = node.prevdef move_to_head(self, node):self.remove_node(node)self.add_to_head(node)def remove_tail(self):node = self.tail.prevself.remove_node(node)return node

4.执行情况

方法1:

方法2:

5.感想

这两个方法都是官方题解给的,我第一次接触这种LRU的题,没能想出来解决办法。

http://www.dtcms.com/wzjs/503840.html

相关文章:

  • 国内个人网站搭建陕西网站建设制作
  • 傻瓜式php网站开发工具求购买链接
  • 磨床 东莞网站建设sem竞价托管价格
  • html5公司网站源码郑州网站推广公司咨询
  • 旅游设计专业网站2023年8月疫情爆发
  • c#做交易网站关键帧
  • 买个域名多少钱一年徐州百度seo排名优化
  • 如何在淘宝网做自己的网站域名大全
  • 网站开发需要用什么软件企拓客软件怎么样
  • 厦门做手机网站公司拉新推广赚钱的app
  • 从化网站建设seo博客推广
  • 丽水品牌网站建设央视新闻的新闻
  • 如何建立自已的购物网站软文广告是什么
  • 功能网站合肥网站排名推广
  • 廊坊外贸网站建设可口可乐搜索引擎营销案例
  • 施坦威网站关于我们班级优化大师官网
  • 眼查看网站开发语言网站广告调词软件
  • 做公司年报网站登录密码是什么收录是什么意思
  • 济南正规做网站公司最有效的app推广方式有哪些
  • 好的手机网站推荐百度搜索推广多少钱
  • 网站建设营销排名方案外贸推广平台哪个好
  • 磁力猫郑州纯手工seo
  • 如何在相关网站免费做宣传广告百度商家平台
  • 国外网站制作有哪些沈阳seo网站关键词优化
  • html5 手机网站 模板网站页面优化方案
  • 上海金融网站制作网站制作公司好网站友情链接的作用
  • 中国人民解放军文职考试一年几次百度seo排名工具
  • 南宁网站seo优化公司怎么申请域名建网站
  • 梅州建网站百度竞价排名平台
  • 网站服务器报价培训后的收获和感想