基本题型: 交换位置,寻找插入位置多指针定位 技巧: 3. 哈希表 4. 涉及到两个链表的要考虑要不要使用dummy节点 具体题目 LRU 流程图: 辅助操作 addToHead()添加节点到头部 removeNode()删除指定节点 moveToHead()移动节点到头部 removeTail()删除尾部节点 put(key,value)操作 不存在 是 存在 key是否存在? put(key,value) 创建新节点 添加到哈希表 添加到链表头部 是否超出容量? 删除尾部节点 从哈希表删除 更新节点值 移动到头部 get(key)操作 不存在 存在 检查key是否存在 获取key 返回-1 获取节点 移动到头部moveToHead() 返回节点值 初始化 LRU Cache 创建虚拟头尾节点 创建 LRU Cache 连接头尾节点head->next = tailtail->prev = head