- 博客(10)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 开篇
写在前面:前前后后刷题也有一年多了虽然拿到了Facebook实习,目前还在刷题进行中。感觉题目虽然都能知道怎么写,但目前在脑海里还没有组织成一个知识网络,所以想开篇博客,和大家讨论关于刷题的经验吧。本博客主要po我刷leetcode的个人的解答为主。有些答案是我自己想的,有些则是参考了网上的代码。在此我隆重推荐师兄的博客,Code ganker:http://codeganker.
2016-01-14 09:51:38
268
原创 [LeetCode]164. Maximum Gap
原题链接:https://leetcode.com/problems/maximum-gap/这道题如果是O(nlgn)方法肯定很简单,排序后找最大gap就行了。但如果要求O(n)时间完成的话,难度就大大加大了。所以我们用桶排序的方法来做这道题。 有关桶排序的简介,大家可以参考维基-桶排序。我们来介绍一下桶排序的应用,桶排序就是将一定范围的值全部丢到同一个桶里。所以我们只要合理安排桶的个数,让
2016-02-06 00:18:43
661
原创 [LeetCode]163. Missing Ranges
原题链接:https://leetcode.com/problems/missing-ranges/这道题目是要你以字符串的形式归纳出缺失的数范围。题目给定一个数组,里面有各个数,然后给定一个lower bound和upper bound。然后把在这个范围内没有在数组中的值归纳出来。这道题没有涉及到太复杂的算法,我们只要处理好边界值就可以了。我们可以设置一个指针p,从lower bound
2016-02-04 00:56:37
370
原创 [LeetCode]162. Find Peak Element
原题链接:https://leetcode.com/problems/find-peak-element/这道题目意思是要求你在数组中找出一个peak值,这个peak值是比左右邻居要大,并且我们假设左边界和右边界都是无穷小。O(n)的解法是我们挨个的访问数组中的每个元素,查看它是不是比左右邻居要大。但这道题我们可以用二分搜索来做,时间是O(lgn)。因为题目不难,在此也就不详述思路了,直接代码
2016-02-04 00:43:18
339
原创 [LeetCode]161. One Edit Distance
原题链接:https://leetcode.com/problems/one-edit-distance/这道题目及变种多次在各大公司的面经中出现过。我在面snapchat的时候也遇到过这道题目。题目是说我们要求给定2个输入字符串S和T,要求判断S和T是不是只有一个字符只差。这里One Edit Distance意思就是你改动其中一个字符串的1个字符,就会变成另一个字符串。这里的改动包括增加1
2016-02-03 06:46:35
535
原创 [LeetCode]160. Intersection of Two Linked Lists
原题链接:https://leetcode.com/problems/contains-duplicate-iii/这道题目是easy题,所以会有可能出现在电面里面。思路也很简单,设置2个指针分别指向2个链表,如果链表长度不相等,假设2个链表相差k个节点,则我们让长度长的那个链表对应的指针先走前进k个节点,然后两个指针一起走,直走到2个指针指向相同的节点为止。时间复杂度是O(n)代码如下:
2016-02-03 00:09:26
362
原创 [LeetCode]159. Longest Substring with At Most Two Distinct Characters
原题链接:https://leetcode.com/problems/longest-substring-with-at-most-two-distinct-characters/这也是一道带锁题,已经解锁的朋友可以选择做一做。这道题其实就是经典的窗口移动题,感觉难度其实是Medium。题目的要求是对于输入的字符串,要求返回只包含两个字母的子串最长的长度。解法就是我们维护一个窗口的2个指针
2016-02-03 00:06:01
741
原创 [LeetCode] 158. Read N Characters Given Read4 II - Call multiple times
这道题是http://foolmancode.blogspot.com/2016/01/leetcode-157-read-n-characters-given.html的升级版,这里要求目标函数能够被多次调用。所以出现了一个情况,就是上次read4()读回来的字符还没完全被取完。我们要先去buffer里面取,取不到了后才再次调用read4()函数去读字符。代码如下:public clas
2016-02-02 23:49:22
2128
原创 [LeetCode] 157. Read N Characters Given Read4
原题链接:https://leetcode.com/problems/read-n-characters-given-read4/这也是一道带锁题,题目的意思是给定一个函数read4(char[] buf) 的函数,每次可以最多读4个字节的字符,然后要求通过给定的函数来实现一个函数,能按照要求读出n个字符。这道题目是http://foolmancode.blogspot.com/2016/
2016-02-02 07:21:08
1365
原创 [Leetcode]156.Binary Tree Upside Down
原题链接:https://leetcode.com/problems/binary-tree-upside-down/这是一道带锁题,原题是说给定一个二叉树,二叉树的右子树要么是空的,要么是有一个兄弟节点的叶子子树(没有孩子)。题目要求讲这课二叉树上下翻转一下,并且使得二叉树的右节点变成左节点。解:这个树是一棵有特征的树,它的生长是沿着左子树方向的。所以我们只需定义好几个变量,
2016-01-14 09:56:10
526
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人