c#题例-2025-09-22 10:47:36
日期: 2025-09-22 分类: AI写作 10次阅读
实现一个线程安全的LRU(最近最少使用)缓存,要求支持以下操作:
1. `Get(int key)`:如果键存在则返回对应的值,否则返回-1。访问后该键应被标记为最近使用。
2. `Put(int key, int value)`:插入或更新键值对。如果缓存容量已满,则删除最久未使用的条目。
约束条件:
- 缓存容量在构造时指定,且容量大于0。
- 所有操作的时间复杂度必须为 O(1)。
- 必须保证在多线程环境下正确工作(即 Get 和 Put 是线程安全的)。
请使用 C# 实现 `LRUCache` 类,并说明关键设计决策以确保线程安全和性能。
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:AI写作
上一篇:无
精华推荐