美文网首页
哈希表/链表--LRU缓存机制

哈希表/链表--LRU缓存机制

作者: 习惯水文的前端苏 | 来源:发表于2022-03-12 15:20 被阅读0次

    \bullet 目录

    \bullet 题号

    \bullet 思路

        对数据的操作是通过key访问到value,这使用map即可实现快速访问

        最久未使用,表明对数据的增改查操作都会使得目标元素的"优先级"增高,即最近被使用,故,理论上可以使用优先级队列标记每一个哈希元素的优先级,当超过容量后,遍历优先级队列找到优先级最低的那一个进行删除即可

        同时新增、获取、更新都要对优先级做调整,拿获取来说,我们需要先findIndex到指定位置,然后splice掉,最后将元素unshift到头部,这些时间复杂度均比较高,故不算最优实现

        那么,如果是链表的话,就不会有这样的问题了

        故该题的核心是使用哈希表存储key、value,使用链表表示优先级

    \bullet 实现

        初始化链表和哈希表

        get

        put

        removeNode和setHead

        结果

    相关文章

      网友评论

          本文标题:哈希表/链表--LRU缓存机制

          本文链接:https://www.haomeiwen.com/subject/wjacdrtx.html