c#题例-2025-09-30 05:07:19
日期: 2025-09-30 分类: AI写作 36次阅读
实现一个线程安全的LRU(Least Recently Used)缓存,要求支持以下操作:
1. `Get(int key)`:如果键存在则返回对应的值,并将该键值对移到缓存末尾(最近使用);否则返回-1。
2. `Put(int key, int value)`:插入或更新键值对,若缓存已满则移除最久未使用的项。
要求所有操作的平均时间复杂度为 O(1),并保证在多线程环境下正确运行。禁止使用 `ConcurrentDictionary` 或任何内置线程安全集合。需手动处理锁机制以避免死锁和性能瓶颈。
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:AI写作
精华推荐