一亩三分地

 找回密码 注册账号

扫描二维码登录本站


Salarytics=Salary Analytics
查询工资数据
系统自动计算每年收入

科技公司如何
用数据分析驱动产品开发
coupon code 250off 立减$250

深入浅出AB Test
从入门到精通
coupon code 250off 立减$250
游戏初创公司招聘工程师、UIUX Designer和游戏策划
坐标湾区
DreamCraft创始团队
招聘游戏开发工程师
把贵司信息放这里
查看: 3025|回复: 50
收起左侧

[打卡] LeetCode 刷题冲刺+逐题总结

[复制链接] |试试Instant~
我的人缘0

分享帖子到朋友圈
联氢人 | 显示全部楼层 |阅读模式
本楼: 👍   75% (3)
 
 
25% (1)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎

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

您需要 登录 才可以下载或查看,没有帐号?注册账号

x
到‍‌‌‍‌‍‌‍‌‌‌‌‌‍‍‌‌‍前天正好刷了600整,不过hard的比例也就刚刚15%还是感觉有点少...现在算是个人的冲刺阶段了,建个帖子激励一下自己~
目标:暂时是每日>=7道新题(其中不少于3道hard) 加上>=5道二/三刷的题,新题随机刷老题按类型刷。如果后面剩余题少了之后再逐渐调整比例:) 另外每天做的所有题都做一个简短的总结加深印象

Don't dream your life, but live your dream.

(第一个帖子发出去才发现主贴各种问题还不能修改Orz,这里顺便求版主把上一个打卡帖删掉~


上一篇:寻求一起在central park组队打卡做项目的
下一篇:战胜拖延,记录一下每天面试刷题
我的人缘0
 楼主| 联氢人 2019-10-1 14:09:33 | 显示全部楼层
本楼: 👍   100% (1)
 
 
0% (0)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎
今天(0930)的话看了国庆阅兵,感觉身为一个中国人自己很自豪。不过题做的相对比较少,满打满算就三道题加上做了一下Linkedin的Python技能测评(还好通过了,不然还得等三个月zzzz)
总结的话今天跟昨天的合并在明天写好了~(差不多这两天的量能凑够一天的总结),以及明天就进入十月份了,做题要再加速了!
回复

使用道具 举报

我的人缘0
 楼主| 联氢人 2019-9-13 15:16:36 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎
于是第一天比例其实就是有问题的=.=,好在总数还是及格了,明天继续加油!

总数:12 (10+2)

Hard: 3 (3+0)
1044.‍‌‌‍‌‍‌‍‌‌‌‌‌‍‍‌‌‍ Longest Duplicate Substring
这道题感觉和1062 (Medium, Longest Repeating Substring)没什么太大区别,在可能的字符串长度上binary search,再手动写一个hash function (1062不需要,1044需要否则MLE). 评论区有说Suffix array也可以的,不过懒得看了23333

552. Student Attendance Record II
dp就是可以的,不过一个十分巧妙的点是可以转换成0-1矩阵然后exponation by squaring,能把O(n)的运算简化成O(logn)

381. Insert Delete GetRandom O(1) - Duplicates allowed
这题没啥特别的,典型的用空间换时间

Medium:  8 (6+2)
1062上面写了就不再写一遍了

(redo) 61. Rotate List
熟练工种,no brainer... (不过似乎面试还挺爱面这种的)

(redo) 531. Lonely Pixel I
其实是见到了下面那个新题于是顺手把这题复习了一遍,O(mn)就行


533. Lonely Pixel II
很蠢的一道题...不建议浪费时间去做...把有N个'B'的行放一个hashmap/dictionary里,然后再挨列看有多少'B'就行

1120. Maximum Average Subtree
没啥说的,不太配medium,逐层返回sum/count再算就行

525. Contiguous Array
这题属于见过了就很容易没见过还真挺难的那种,技巧就是把0当作-1,然后hash prefix sum就行了

912. Sort an Array
Emmmm,更像是一个playground自己练排序算法的那种。如果想刷题量的话你写个return sorted(nums)都是能过的hhhhhh

1066. Campus Bikes II
heap + bit mask, 做的时候卡bit mask那儿(没想到用bit mask,想的别的东西)卡了好久

Easy: 1 (1+0)
917. Reverse Only Letters
一头一尾俩pointer,遇字母互换即可








回复

使用道具 举报

我的人缘0
 楼主| 联氢人 2019-9-14 14:55:16 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎
又是没全部达成目标的一天...嘛还是先上题吧~

总计:10(9+1)

Hard: 2 (2+0)

218. The Skyline Problem
好题强推,对于题目分析和heap使用考察很到位,有多种做法(我自己是用分interval做的,看到一个(加上自己完善了一下)比较漂亮的解法是直接记录critical point以及到point的时候当前的rec个数,Heap方面用lazy removal处理

857. Minimum Cost to Hire K Workers
相对简单(但也不算白给)的一道hard,分析明白就不难,核心就是按性价比排序,满足性价比的条件下quality低的优先。

Medium: 5
(4+1)

(Revisit) 215. Kth Largest Element in an Array
Quickselect练习题,O(n)复杂度

841. Keys and Rooms
误入Medium的Easy题...一个BFS/DFS就没有然后了

540. Single Element in a Sorted Array
类Binary search,不过边界条件需要格外注意,挺麻烦的

734. Sentence Similarity(Easy) / 737. Sentence Similarity II (Medium)
一个细微条件的差异导致难度完全不同,前者存成一个dic然后查就完了,后者需要DFS或者Union-Find,难倒是不难不过需要熟练度

355. Design Twitter
一道design的题,重点就是把每个人的tweet存成array然后取Update的时候把所有的尾巴存成一个heap

Easy: 3 (3+0)

734上面说过了

371. Sum of Two Integers
误入easy的medium...纯bit manipulation,评论区有bit操作非常详尽的总结

703. Kth Largest Element in a Stream
建一个heap,一直update就好了

回复

使用道具 举报

我的人缘0
 楼主| 联氢人 2019-9-15 12:59:00 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎
今天参加了一下weekly contest,顺便写了两个答案把脑力用光了...于是到现在都还没有一天完整的达成所有目标zzzz
今天做的全部是新题并没有做老题

总计:7

Hard: 3
1192. Critical Connections in a Network
近期亚麻高频题,DFS-Tree,开始的时候不会然后Contest的时候现学的...明白了之后发现其实并不难,但是得反复过不然很容易忘

428. Serialize and Deserialize N-ary Tree
我是用最直接的括号分割来做的,不过用记录子节点的方式做会更简洁

968. Binary Tree Cameras
DP Greedy两种做法,挺有意思的

Medium: 3
998. Maximum Binary Tree II
只要想明白了加入的节点永远在最右这一点,就是很直接的一道树的题

1191. K-Concatenation Maximum Sum
分析比代码重要,K>=2的时候俩数组拼一起找最大之后根据sum(arr)是否大于零来决定输出,挺有意思的一道题

1190. Reverse Substrings Between Each Pair of Parentheses
相对麻烦的一道题,也是分析重于代码本身,recursive相对比较直接

Easy: 1
1189. Maximum Number of Balloons
纯种easy没啥好说的

感觉不能沉迷刷新题呀,老题很多是很经典需要复习的...明天继续加油~
回复

使用道具 举报

我的人缘0
wowmomsos 2019-9-15 13:17:17 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   82% (218)
 
 
17% (47)    👎
1190 我用的Stack感觉也很直观。

回复

使用道具 举报

我的人缘0
 楼主| 联氢人 2019-9-15 13:45:10 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎
wowmomsos 发表于 2019-9-15 13:17
1190 我用的Stack感觉也很直观。

感觉stack做法和recursive应该不会有很大区别吧,相当于手动实现了一下recursive的过程
回复

使用道具 举报

我的人缘0
 楼主| 联氢人 2019-9-16 16:01:13 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎
周末似乎有点怠惰=.= 接下来几周基本上是决定性的了,加油!
又是全部是新题的一天...

总计:7

Hard: 3
440. K-th Smallest in Lexicographical Order
逐层构造出最终的答案,做的时候观察到了规律但是没想到逐层构造这一点(类似DFS),值得一看

980. Unique Paths III
很莫名其妙的一道题,直接backtrack居然就是解法...

489. Robot Room Cleaner
DFS+backtracking,如果没做过的话很推荐看一下

Medium: 3
311. Sparse Matrix Multiplication
利用sparse matrix的性质hash一下就行了,考察熟练度的

1027. Longest Arithmetic Sequence
一道相对直接的dp题,别多想直接dp做就对了

825. Friends Of Appropriate Ages
看到限定range,bucket sort应该成为条件反射:)

Easy: 1
896. Monotonic Array
我居然想了半天logN的解法,然后没想出来看了眼评论区才发现不要求logN...感觉自己像个憨憨





回复

使用道具 举报

我的人缘0
 楼主| 联氢人 2019-9-17 14:57:48 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎
今天身体状态不是特别好,明天会和今天合并总结~
回复

使用道具 举报

我的人缘0
 楼主| 联氢人 2019-9-18 14:26:15 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   98% (58)
 
 
1% (1)    👎
本帖最后由 联氢人 于 2019-9-18 14:37 编辑

两天放在一起写果然看起来多一些(其实并没有)
另外解释一下数字,在前面的是新题后面的是复习,比如5+3就是5道新题三道老题

总计:17 (12+5)

Hard: 4 (4+0)
732. My Calendar III (跟729. My Calendar I (Medium), 731. My Calendar II (Medium) 放在一起)
仨题用的是一个东西:segment tree.  JAVA的话有treemap会直接很多,我用的Python就自己定义一下Node,然后手动实现一下树操作。重点其实就是想到利用tree来实现O(logn)的操作复杂度

265. Paint House II (跟256. Paint House (Easy) 放在一起)
如果先做了256的话265的难度就是medium封顶,不过初见还是有一点难度的。也是比较基础的dp

1036. Escape a Large Maze
十分有意思的一道题,因为整个空间太大而block很小(max=200) 我最开始想的是对block做bfs或者dfs看是否把起点或者终点包围住,后来忽然意识到这么小的block size的话能包围的空间也十分有限,那我直接对起点和终点都做bfs,如果每个所处的空间都大于可能被包围的最大空间就说明他们没有被包围(当然提前相遇这种情况就更好了),so that's it. 需要注意如果用面积做判断条件需要算一下面积大小(近似n^2/2,n=len(block)),如果用bfs深度的话是2*n而不是n (这点非常容易错)

329. Longest Increasing Path in a Matrix
好题强推,dfs+dp和topological sort两种解法都很有意思

Medium: 6 (3+3)
837. New 21 Game
其实是一道数学题...把表达式列出来之后发现其实是就是一个dp,不过如果表达式没列出来的话复杂度会多乘一个O(n)。Observation is the key.

556. Next Greater Element III (跟503. Next Greater Element II (Medium),496. Next Greater Element I (Easy) 一起)
这三道题也是(556不完全一样)一个重要知识点:Monotonic stack: 因为有某种单调性性质,导致在违反单调性的时候可以一直pop知道满足或为空。556的话有用到单调性性质,主要做法是从后往前扫,遇到第一个违反的(set as a)之后再扫一遍找到第一次出现的大于a的数字,然后做交换。同时需要注意判断32-bit条件。

238. Product of Array Except Self
这道做过的题居然卡了一会儿... 其实就是正着扫一遍反着扫一遍

(另外几个跟前面合并了)


Easy: 7 (5+2)
686. Repeated String Match
误入Easy的Hard题,KMP我举得放在easy过于过分了...

171. Excel Sheet Column Number
纯种EZ题,brain teaser

509. Fibonacci Number
比较正常的做法是dp入门题,不过Matrix的O(logn)解法也是挺有意思的,给个medium不过分

有两道前面说过了,还有两道best time sell stock那个系列的打算明天一起进行总结


另外说点无关的,有点意外有人会收藏我这个帖子,高兴之余也是一种激励吧~另外也非常希望投出去还没信儿的几家赶紧给个面试呀>.<

回复

使用道具 举报

我的人缘0
wendy1121 2019-9-19 07:36:14 | 显示全部楼层
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   100% (25)
 
 
0% (0)    👎
太厉害了,跟着你刷
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法 - 不要多加空格: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

手机版||一亩三分地

GMT+8, 2019-10-24 12:42

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表