先进先出
缓存是一种提高数据读取性能的技术 cpu缓存 数据库缓存 浏览器缓存
最少使用策略
最近最少使用策略
链表通过“指针”将一组零散的内存块串联起来使用。
单链表、双向链表、循环链表
头节点 尾节点(空地址)
维护一个有序单链表 越靠近链表尾部的节点是越早之前访问的
当有一个心的数据被访问的时候,我们从链表头部开始顺序遍历链表
- 如果数据之前已经被缓存在链表当中了,我们遍历得到这个数据对应的结点,并将其从原来的位置删除,然后再插入到链表的头部
- 没有缓存在链表中 缓存未满直接插入到链表的头部;已满,则删除链表尾部结点,将新的数据插入到链表的头部
还可以引入散列表记录每个数据的位置,将缓存访问的时间复杂度降到1