LRU (Least Recently Used) 算法是一种常用的缓存淘汰策略,用于在有限的缓存空间中管理最近使用的项目。当缓存达到容量上限时,LRU 算法会淘汰最近最少使用的项目,为新的项目腾出空间。在本文中,我们将使用 JavaScript 实现一个简单的 LRU 算法。
LRU 算法的基本思想是,每当访问一个项目时,就将其移至缓存的最前面,表示最近被使用过。当缓存已满并且需要插入一个新项目时,算法会淘汰最后一个项目,因为它是最近最少使用的。
首先,我们需要定义一个节点类来表示缓存中的项目。该节点包含一个键和一个值,以及指向前一个节点和后一个节点的指针。我们可以使用 JavaScript 的类来实现这个节点:
class Node {
constructor(key, value