一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推多家公司面试
游戏初创公司
招聘工程师、Designer和游戏策划
游戏初创公司DreamCraft招聘工程师、UIUX Designer和游戏策划
把贵司招聘信息放这里
查看: 683|回复: 20
打印 上一主题 下一主题
收起左侧

[Leetcode] 刷题记录

[复制链接] |试试Instant~ |关注本帖
跳转到指定楼层
垅头
alyssum14 发表于 2018-2-1 14:34:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货
x
前前后后已经刷题不短时间了,但是还没有系统总结过,很多题也只是了解了下答案不够深入理解。现在重新开个leetcode的session,记录自己的刷题状况。毕业也快小半年了,工作还没有着落,希望新的一年能找到心仪的工作吧~

1/31/2018
今天共刷新题10道
Medium:
  • 56. Merge Intervals
  • 495. Teemo Attacking
  • 228. Summary Ranges
  • 163. Missing Ranges



Hard:
  • 715. Range Module
  • 689. Maximum Sum of 3 Non-Overlapping Subarrays
  • 57. Insert Interval
  • 352. Data Stream as Disjoint Intervals
  • 188. Best Time to Buy and Sell Stock IV
  • 123. Best Time to Buy and Sell Stock III



复习5道:
  • 720. Longest Word in dictionary
  • 744. Find Smallest Letter Greater than Target
  • 724. Find Pivot Index
  • 760. Find Anagram
  • 763. Partition Labels


在missing range这道题上花的时间不少,刚开始没有想清楚起点的关系。然后发现加了会让int溢出的test case,这个以后要注意了。689的标准答案很巧妙啊,我自己的方法O(n^3),人家O(n)就解了,还得锻炼敏锐度呀。
沙发
 楼主| alyssum14 发表于 2018-2-3 13:33:49 | 只看该作者
2/1/2018
共刷题11道
Easy
* 349.Intersection of Arrays

Medium:
* 77 Combinations
* 40. Combination sum II
* 373 Find K Pairs with Smallest Sums
* 378 Kth Smallest Element in a Sorted Matrix
* 31. Next Permutation
* 46. Permutations
* 47. Permutations II
* 90. Subsets II
Hard:
* 719. Find K-th Smallest Pair Distance
* 668. Kth Smallest Number in Multiplication Table

31 和 378花了蛮长时间,以前刷的时候以为自己已经懂了,没想到扣细节还是不清楚。越来越觉得吧一道题弄透彻远比只追求数量重要。
回复 支持 反对 使用道具 举报
板凳
xiaohao12 发表于 2018-2-3 16:52:13 | 只看该作者
最后一句话说得很对
回复 支持 反对 使用道具 举报
地板
 楼主| alyssum14 发表于 2018-2-4 04:50:00 | 只看该作者
2/2/2018
今天共刷新题7道
Easy:
* 350. Intersection of Two Arrays II

Medium:
* 377. Combination Sum IV
* 349. Intersection of Two Arrays
* 254. Factor Combinations
* 216. Combination Sum III


Amazon:
* 20        Valid Parentheses
* 538. Convert BST to Greater Tree

538 Morris遍历弄懂了真的能够应用到很多题中,还是理解原理比单纯的背code要重要。准备这两天先把amazon tag的题弄完
回复 支持 反对 使用道具 举报
地下室
 楼主| alyssum14 发表于 2018-2-4 17:31:54 | 只看该作者
2/3/2018
今天共刷题11题
Amazon:
* 661. Image Smoother
* 438. Find All Anagrams in a String
* 387. First Unique Character in a String
* 746. Min Cost Climbing Stairs
* 459. Repeated Substring Pattern
* 771. Jewels and Stones
* 682. Baseball Game
* 234. Palindrome Linked List
* 160. Intersection of Two Linked Lists
* 242. Valid Anagram
* 206. Reverse Linked List

160的解法很巧妙呀,就是很难想到。发现leetcode的分类有点迷,438的解法应该是跟76.Minimum Window Substring差不多的,为什么一个是hard一个是easy呢
回复 支持 反对 使用道具 举报
下水道
 楼主| alyssum14 发表于 2018-2-5 15:09:09 | 只看该作者
2/4/2018
今天刷题17道
Amazon:
  • 189. Rotate Array
  • 141. Linked List Cycle
  • 155. Min Stack
  • 645. Set Mismatch
  • 204. Count Primes

  • 414. Third Maximum Number
  • 617. Merge Two Binary Trees
  • 532. K-diff Pairs in an Array
  • 21. Merge Two Sorted Lists
  • 235. Lowest Common Ancestor of a Binary Search Tree

  • 119. Pascal's Triangle II
  • 535. Encode and Decode TinyURL
  • 238. Product of Array Except Self
  • 78. Subsets
  • 199. Binary Tree Right Side View

  • 102. Binary Tree Level Order Traversal
  • 48. Rotate Image


155 用一个stack的方法自己做还是有点问题,把min设置成Long导致有很多精度的问题。414 有很多tricky的case,看来把default值设置成Integer.MIN_VALUE也不是安全的,学到了用Integer min = null的用法。

回复 支持 反对 使用道具 举报
地基
 楼主| alyssum14 发表于 2018-2-6 14:22:04 | 只看该作者
本帖最后由 alyssum14 于 2018-2-6 16:05 编辑

2/5/2018

今天刷了7题
Amazon:
  • 215. Kth Largest Element in an Array
  • 380. Insert Delete GetRandom O(1)
  • 240. Search a 2D Matrix II
  • 49. Group Anagrams
  • 73. Set Matrix Zeroes

  • 200. Number of Island
  • 17. Letter Combinations of a Phone Number

  • 215时在Quick sort Quick Select花了比较久的时间,以前也有总结过,但是又把自己绕进去了,在有0-base index1-base index的问题上是弱项,总转不过弯来。。。.
  • 二分的解法有时候也不一定是最优解,240 这题双指针解法的复杂度是O(n + m) 如果用二分每个点水平垂直两个二分,复杂度就是O(2 * lg(n!)  ),显然双指针较优。 Search a 2D Matrix I的话,双指针复杂度依旧是O(m + n) 二分的话,就把matrix撸直了,看成一个m*nsorted list,复杂度是O(lg(mn)),二分法更优。
  • 今天刷的题都很经典呀,有些题试了一题多解,比如200 number of islands分别用BFS, DFS union find实现了下,梳理了思路不清晰的地方。

回复 支持 反对 使用道具 举报
 楼主| alyssum14 发表于 2018-2-7 13:21:13 | 只看该作者
2/6/2018

今天刷题8道

Amazon
  • 139. Word Break
  • 236. Lowest Common Ancestor of a Binary Tree
  • 2. Add Two Numbers
  • 138. Copy List with Random Pointer
  • 98. Validate Binary Search Tree

  • 8. String to Integer (atoi)
  • 3. Longest Substring Without Repeating Characters
  • 146. LRU Cache

今天老师派活了,以后刷题的时间可能会受到挤压,不过会尽量保证每天有刷新的题。还看了些behavior的问题,语言组织能力比较差不会编故事伤不起呀。其实今天还刷到了longest panlindrome substring,只实现了最糙的二维DP版本,但是明天还有事情准备早点睡。如果明天有时间的话,想试试看压缩数组和实现下manacher算法。

回复 支持 反对 使用道具 举报
9
 楼主| alyssum14 发表于 2018-2-9 00:41:56 | 只看该作者
昨天太累了,直接睡过去了没来得及update,现在补下。。。

2/7/2018

Easy:
  • 760. Find Anagram Mappings
  • 461. Hamming Distance
  • 657. Judge Route Circle
  • 728. Self Dividing Numbers
  • 561. Array Partition I

今天真是又累又困呀,刷几道easy提提神。还得花点时间看BQ和project,明后天都有面试,希望顺利吧~

回复 支持 反对 使用道具 举报
10
 楼主| alyssum14 发表于 2018-2-9 12:21:26 | 只看该作者
2/8/2018
今天共刷7题

Amazon:
  • 252. Meeting Rooms
  • 127. Word Ladder
  • 42. Trapping Rain Water
  • 239. Sliding Window Maximum
  • 297. Serialize and Deserialize Binary Tree

  • 23. Merge k Sorted Lists
  • 536. Construct Binary Tree from String

昨天的561. Array Partition I虽然解出来了,但是并不是最优解,今天又研究了下答案中O(n)的解法,利用的区间自然有序的性质,类似与桶排序(这个也是大数据分流经常使用的手段),有些easy题还是蛮有意思的嘛。

回复 支持 反对 使用道具 举报
11
 楼主| alyssum14 发表于 2018-2-12 06:53:05 | 只看该作者
本帖最后由 alyssum14 于 2018-2-12 11:00 编辑

2/9/2018

Amazon
今天共刷题7道
  • 783. Minimum Distance Between BST Nodes
  • 234. Palindrome Linked List
  • 253. Meeting Rooms II
  • 98. Valid Binary Search Tree
  • 339. Nested List Weight Sum
  • 344. Reverse String
  • 476. Number Complement

补打卡

回复 支持 反对 使用道具 举报
12
 楼主| alyssum14 发表于 2018-2-12 12:20:23 | 只看该作者
2/10/2018
今天共刷题7道

Easy:
  • 605. Can Place Flowers

Medium:
  • 436. Find Right Interval
  • 452. Minimum Number of Arrows to Burst Balloons
  • 735. Asteroid Collision
  • 649. Dota2 Senate
  • 309. Best Time to Buy and Sell Stock with Cooldown

  • 714. Best Time to Buy and Sell Stock with Transaction Fee

436中二分的部分找到比target大的左边界还有点拎不清,二分问题寻找大于目标的最小边界或者小于目标的最大边界还应该多练习。605. Can Place Flowers 这题想复杂了用DFS超时了,高票答案有点类似摩尔投票,array的题很多还是考数学功底。股票题很锻炼dp思想,一通百通,性价比很高呀。

回复 支持 反对 使用道具 举报
13
 楼主| alyssum14 发表于 2018-2-12 16:40:31 | 只看该作者
2/11/2018
今天共刷题7道

Easy:
  • 485. Max Consecutive Ones
  • 169. Majority Element

Medium:
  • 487. Max Consecutive Ones II
  • 209. Minimum Size Subarray Sum
  • 120. Triangle

Hard:
  • 76. Minimum Window Substring
  • 30. Substring with Concatenation of All Words

30. Substring with Concatenation of All Words还没吃透,以后要复习下。总算是catch up了,买了Nespresso 的 pixel,自己煮咖啡振奋精神~

回复 支持 反对 使用道具 举报
14
VVtina 发表于 7 天前 | 只看该作者
lz你每天刷题花多久时间啊
回复 支持 反对 使用道具 举报
15
 楼主| alyssum14 发表于 7 天前 | 只看该作者
VVtina 发表于 2018-2-14 06:52
lz你每天刷题花多久时间啊

这个也没细算过。。大概是有时间就刷4,5个小时,有别的事忙的话就看一两道简单题
回复 支持 反对 使用道具 举报
16
 楼主| alyssum14 发表于 7 天前 | 只看该作者
2/12/2018
今天共刷题1道

Hard:
  • 632. Smallest Range

是的,今天就刷632这一题,也花了很长时间,不过也值得,它暴露了现在的一个瓶颈的问题: 解题盲目依赖之前经验,理解不全面问题导致走入死胡同并且不知回头,最后拆东墙补西墙的改code还是不能解决问题。比如这道题,第一反应是pq,就觉得用pq + sliding window可解,但是sliding window只能在一边收缩边界,那另一边的处理就很棘手了。如果换个思路,pq + 换弹夹的解法就简便而且有效了。最近好几道题,一开始都觉得自己的想法没有问题,可是结果代码越改越长,路越走越弯, 自我检讨下…

回复 支持 反对 使用道具 举报
17
 楼主| alyssum14 发表于 5 天前 | 只看该作者
2/15/2018
今天共刷题7道

Easy:
  • 674. Longest Continuous Increasing Subsequence
  • 606. Construct String from Binary Tree
  • 762. Prime Number of Set Bits in Binary Representation


Medium:
  • 392. Is Subsequence
  • 763. Partition Labels
  • 742. Closest Leaf in a Binary Tree

Hard:
  • 727. Minimum Window Subsequence


树的题一直都是弱项,想着想着就容易绕进去,还需要多练习呀。另外学到了用扫描线记录字母的最后出现位置的技巧。过年啦~希望新的一年有好运气,心想事成吧~ 另外希望之后的onsite能顺利,早点上岸~

回复 支持 反对 使用道具 举报
18
 楼主| alyssum14 发表于 4 天前 | 只看该作者
2/16/18
今天共刷题5道

Medium:
  • 694. Number of Distinct Islands
  • 186. Reverse Words in a String II

Hard:
  • 675. Cut Off Trees for Golf Event
  • 711. Number of Distinct Islands II
  • 460. LFU Cache

675. Cut Off Trees for Golf Event 试了PQ + BFS的解法,还看了下解答里的A* Search和detour的解法,比较拓展思维也比较费脑细胞呀...


回复 支持 反对 使用道具 举报
19
 楼主| alyssum14 发表于 3 天前 | 只看该作者
本帖最后由 alyssum14 于 2018-2-18 18:23 编辑

2/17/18
今天共刷题14道

Easy:
  • 111. Minimum Depth of Binary Tree
  • 784. Letter Case Permutation

Medium:
  • 449. Serialize and Deserialize BST
  • 692. Top K Frequent Words
  • 545. Boundary of Binary Tree
  • 725. Split Linked List in Parts
  • 529. Minesweeper
  • 516. Longest Palindromic Subsequence
  • 451. Sort Characters By Frequency
  • 508. Most Frequent Subtree Sum
  • 355. Design Twitter
  • 663. Equal Tree Partition

Hard:
  • 126. Word Ladder II
  • 517. Super Washing Machines

做了下contest,发现自己做题实在是太慢了,看来以后刷题应该做下定时训练了,毕竟面试的时候没人给你时间不停的跑test case调试。529. Minesweeper也是很经典的BFS加附加条件的题,其实很多题都是在BFS, DFS上做些小小的改动就变成一道新的题了,应该找时间总结下类似的题目,吃透BFS和DFS。另外对word ladder II的复杂度还是不大确定。查了下网上有两种说法,一个是O(26^单词长度 *字典中单词数量 ), 一个是O(min(26^单词长度, 单词长度 * 字典中单词数量))。我比较倾向第一个,毕竟新建单词和查找单词应该是嵌套的吧,如果用双端队列BFS的话就是就是总复杂度除以2?

回复 支持 反对 使用道具 举报
20
 楼主| alyssum14 发表于 前天 14:54 | 只看该作者
本帖最后由 alyssum14 于 2018-2-19 15:08 编辑

2/18/18
今天共刷题11道

Medium
  • 537. Complex Number Multiplication
  • 738. Monotone Increasing Digits
  • 640. Solve the Equation
  • 396. Rotate Function
  • 662. Maximum Width of Binary Tree
  • 775. Global and Local Inversions
  • 553. Optimal Division
  • 646. Maximum Length of Pair Chain
  • 776. Split BST
  • 300. Longest Increasing Subsequence
  • 673. Number of Longest Increasing Subsequence

把上次的没有刷完的亚麻的tag刷完了,接下来还是刷相似的题。另外,如果有时间的话,每天加一道mock interview的练习,锻炼现场解题速度。

回复 支持 反对 使用道具 举报
本版积分规则
关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 GMT+8, 2018-2-21 17:25
Powered by Discuz! X3 © 2001-2013 Comsenz Inc. Design By HUXTeam
快速回复 返回顶部 返回列表