摘要:
有序旋转数组是指将有序数组向左或者向右移动k个位置得到的结果,其查找算法不难理解,因为局部有序,因此很容易想到二分查找是最合适的方法,时间复杂度O(nlogn),本文总结四道相关的算法题目。重点是二分查找算法的变形应用,是一个重要的算法知识点。 阅读全文
摘要:
运用你所掌握的数据结构,设计和实现一个 LRU (Least Recently Used,最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put ,时间复杂度要求为O(1)。使用哈希表和双向链表两个数据结构来实现。其中哈希表主要用来保存键值对对应关系,而数据是否最近被使用过用一个双向链表来记录, 阅读全文