146. LRU Cache

    1. 双链表
      1. node 节点来存储 key、value、next、preve
    2. Map
      1. key = key
      2. value = node

    辅助函数

    1. moveToTail
      1. deleteNode
      2. insertNodeToTail
    2. deleteNode

    关键操作

    1. Get
      1. moveToTail
    2. put
      1. 如果没有该元素:insertNodeToTail
        1. 同时考虑capacity,如果队列已满,需要removeFirst
        2. 使用辅助函数deleteNode
      2. 如果有该元素 moveToTail