在 C# 中实现 LRU 缓存 LRU(Least Recently Used,最近最少使用)缓存是一种用于存储有限数量项目的数据结构。当缓存达到其容量时,最少使用的项目将首先被移除。本文将讲解如何在C#中使用字典和双向链表来实现一个高效的LRU缓存。 LRU缓存 (1) 字典 (2) 双向链表 (2) 缓存容量 (1) 时间复杂度 (6) 节点 (5) 2024年10月15日 | 阅读 110
构造 LinkedList 的深层复制 本文介绍了如何深度复制带随机指针的链表。通过使用字典映射原节点到新节点,我们实现了两个遍历:第一次创建新节点,第二次设置它们的 `next` 和 `random` 指针。这种方法确保在 O(n) 时间和空间复杂度内完成复制,解决了带随机指针链表的复杂性问题。 链表 (1) 深度复制 (1) 随机指针 (1) 时间复杂度 (6) 空间复杂度 (3) 字典 (2) 2024年10月9日 | 阅读 93