
高频
文章平均质量分 79
joycetlm
这个作者很懒,什么都没留下…
展开
-
链表高频
(一)copy list with random pointerhttps://leetcode.com/problems/copy-list-with-random-pointer/description/题目:复制一个含有random指针的链表;解答:分为三步:1.复制链表值:1 -> 2 ->3 -> null 变成 1 -> 1' -> 2 -> 2' -> 3 -> 3'原创 2018-01-14 09:38:37 · 111 阅读 · 0 评论 -
排序链表
(一)Sort Listhttps://leetcode.com/problems/sort-list/description/题目:将链表排序,使得时间复杂度为O(nlogn)解答:方法一:归并排序:将链表分成左右两等分,对于每个等分进行递归调用,直到每个等分只含有一个节点; 第一次犯错:在拆分左右时,忘记将左链表尾部指向null;代码:cl...原创 2017-07-31 09:35:26 · 163 阅读 · 0 评论 -
Subarray子数组
该题型多采用prefixSum的方法:(一)Maximum Subarray (Frequent ++)http://www.lintcode.com/en/problem/maximum-subarray/题目:找到数组中总和最大的子集并返回该子集总和;解答:将该数组的prefixSum存储在新数组中(亦可覆盖原数组节省空间),因为sum(i ~ j) = prefixSum原创 2017-08-01 09:26:00 · 998 阅读 · 0 评论 -
Min Stack(栈高频)
Min Stackhttps://leetcode.com/problems/min-stack/description/题目:设计一个栈,不仅满足栈的基本功能,还能在固定的时间取到栈中的最小元素;解答:使用两个栈:一个栈stack正常存储元素; 另一个栈minStack与stack同步存储、删除元素,但是存储的内容为当前原创 2018-02-01 02:45:39 · 226 阅读 · 0 评论 -
Quick Sort(快速排序)
Quick Sort : 时间复杂度为O(logn)思路:参考https://www.cnblogs.com/luomeng/p/10587492.htmlpublic void quickSort(int[] nums, int low, int high) { if (low >= high) { return; } ...原创 2018-01-19 14:20:43 · 661 阅读 · 0 评论 -
Hash高频
(一)LRU (Least Recently Used) cache https://leetcode.com/problems/lru-cache/description/题目:为LRU缓存策略设计一个数据结构,它应该支持以下操作:获取数据(get)和写入数据(set)。 获取数据get(key):如果缓存中存在key,则获取其数据值,否则返回-1。原创 2018-02-06 05:14:07 · 182 阅读 · 0 评论