分析 题目要求时间复杂度为O(1),且最多储存k个key 梳理下javascript可用的数据结构: 对象 : object.create(null) 无法获取最早插入的key,不能满足超过k个数就删除 数组 : 数组可以满足排序,但是查找和删除的时间复杂度都为O(n) 我们需要的数据结构是能够记录操作顺序,即可以快速删除,又可以快速查找。 因此可以将双向链表和字典结合使用。 构建字典用于存放ListNode节点 设置双向链表的head和tail set操作时构建ListNode节点,并将其放在链表尾部。 若字典长度超出k,则将链表头部数据删除,并删除字典中相应的keydelete ...