成为ACM金牌选手后,他的LeetCode刷题经验GitHub获800星

本文作者分享了成为ACM金牌选手后的刷题经验,他的《程序员进阶必刷编程80题》在GitHub上获得800多星。他认为高效的刷题思路包括理解解题思路、自己思考、实践和讲解题目。文章按照链表、二分法、二分答案等十二个阶段详细介绍了刷题路径。
摘要由CSDN通过智能技术生成
本文作者:加贺,ACM金牌选手,九章算法助教

刷题,就是很痛苦很打击的过程,是不断怀疑自己适不适合搞CS这行的过程

我曾在中厂、大厂都工作过,也常年担任面试官。面试跟共事的人多了,总结出了这样的现象:

有的人天生适合玩ACM,连题都不带刷的

有的人刷了400-500到题,连中厂面试都过不了

没办法,这就叫做幸存者偏差。

能怎么办呢?不能靠智商占领技术高低的话,那只能接受现实:好好刷题

一遍一遍的刷题,总结总结再总结,实战实战再实战,坚持下来,你会获得本质上的提升。

所以,我爆肝了一套程序员进阶必刷编程80题,同时在Github上获得了800多颗星星,希望那些在学习或事业上遭遇瓶颈的同学能够在这套题中找到学习思路,不断进步。

v2-74b9f8ba6159cb95ea8919edb5d7b28a_b.jpg

我认为,高效的刷题思路应该是这样的:

1、直接看答案,理解解题思路,然后自己思考,并用实际例子来验证反推,理解这段code的精髓

2、先按自己的思路写code,然后再于答案比对

3、重复上述两个步骤,不断刷,不断实践,重复多此,很快就能熟悉下来

4、在不看提示的情况下,给其他人讲清楚这道题的思路,讲清楚后就可以练习下一道了

我将进阶式刷题分为十二个阶段

阶段一:链表

翻转链表(一) Algorithms

翻转链表(二)

K组翻转链表

链表的中点

带环链表

带环链表 II

链表排序

阶段二:二分法

二分查找

搜索二维矩阵

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值