「力扣」第 146 题:LRU 缓存机制、第 460 题:LFU 缓存机制(双链表、哈希表、红黑树)

缓存是有限的,在缓存满的时候,删除哪些元素,就有不同的缓存策略。

LRU (Least Recently Used)缓存机制:

  • 在缓存满的时候,删除缓存里最久未使用的数据,然后在缓存中放入新元素;
  • 数据的访问时间很重要,访问时间距离现在最近,就最不容易被删除;

就是喜新厌旧,淘汰在缓存里呆的时间最久的元素。

「力扣」第 146 题:LRU缓存机制

题解:哈希表 + 双向链表(Java)

「力扣」第 146 题:LRU 缓存机制、第 460 题:LFU 缓存机制(双链表、哈希表、红黑树)_第1张图片

LFU (Least Frequently Used,最不经常使用)缓存机制

  • 在缓存满的时候,删除缓存里使用次数最少的元素,然后在缓存中放入新元素;
  • 数据的访问次数很重要,访问次数越多,就最不容易被删除;

「力扣」第 460 题:LFU缓存机制

题解:哈希表 + 双向链表(Java)

「力扣」第 146 题:LRU 缓存机制、第 460 题:LFU 缓存机制(双链表、哈希表、红黑树)_第2张图片

你可能感兴趣的:(力扣,链表,哈希表,红黑树)