Young87

SmartCat's Blog

So happy to code my life!

当前位置:首页 >AI写作

c#题例-2025-10-08 10:34:14

实现一个线程安全的LRU(最近最少使用)缓存,要求支持以下操作:
1. `Get(int key)`:如果键存在则返回对应的值,否则返回-1。
2. `Put(int key, int value)`:插入或更新键值对。
3. 缓存容量为正整数,在初始化时指定。

要求:
- 所有操作的时间复杂度必须为 O(1)。
- 多个线程并发调用 Get 和 Put 时,必须保证线程安全且不出现死锁。
- 不得使用 .NET 内置的并发集合类(如 ConcurrentDictionary),但可使用锁或其他同步机制。

请编写完整的 C# 类实现,并在注释中说明关键设计思路和线程安全处理方式。

除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇: c#题例-2025-10-08 16:07:37

下一篇: c#题例-2025-10-08 03:25:50

精华推荐