c#题例-2025-09-19 02:33:59
日期: 2025-09-19 分类: AI写作 1次阅读
实现一个线程安全的LRU(最近最少使用)缓存,要求支持以下操作:
1. Get(key):如果键存在则返回对应的值,并将该键值对移至缓存头部(表示最近使用);否则返回-1。
2. Put(key, value):插入或更新键值对。如果键已存在则更新值并移至头部;如果缓存已满,则删除最久未使用的项后再插入新项。
要求:
- 所有操作的时间复杂度必须为 O(1)。
- 缓存容量在构造时指定。
- 必须保证多线程环境下操作的安全性,不允许出现竞态条件。
请用 C# 实现 LRUCache 类,并说明关键设计思路。
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:AI写作
上一篇:无
精华推荐