算法:经典七节 题目一 LRU内存淘汰机制算法

LRU:
数据 Map(K,V) key的value是计算的用户访问key这个内容最近访问的时间

根据时间排序,内存不够时,将最久未访问(时间最老(小))的记录删除

要求:put/get 时间复杂度O(1)

getO(1)容易想到数组,但是数据结构新增删除容量变化移动难,那么就是hashmap记录指针,然后双向链表维护时间顺序

中间涉及重复访问的,先删除,再增加到tail尾巴处
如果要访问的已经时tail尾巴,就不需要更新
如果头部被访问了要移动到tail,需要细节处理,head指向次头

有空再尝试代码

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页