GitHub 标星 90K+ 的算法小抄,全球排名 36,到底有多牛逼?
程序员为啥要刷算法?
其实,算法题目已经成为了公司筛人的一种方式,大厂的每一轮面试基本都会有几道算法题,甚至有的公司笔试全部都是算法题。其他题目答得都差不多,那你算法题做不出来,可能就被淘汰了。
因此不光是算法工程师要好好研究算法,在大厂混的或者要想进大厂的朋友,算法都是重中之重,关键中的关键。
这里顺便给大家送一本阿里 P8 撰写的算法笔记,是他刷 Leetcode 的精华总结,目前该项目此前在 GitHub 开源后,连续多次霸榜 GitHub Trending 首页,现 Star 数已经突破 90k,全球排名 36!受欢迎程度由此可见一斑:
![](https://static001.geekbang.org/infoq/92/926076b656282787eb13864f35d6ae5e.png)
![](https://static001.geekbang.org/infoq/dd/ddcfdadbf969994bef512ee5e655fdee.png)
有别于其他 LeetCode 刷题仓库,该项目里面不止提供了题解代码,还有算法的具体解答思路与思考框架。
内容前后共分为以下 3 份 PDF,内容不可谓不详尽:
第一份:LeetCode 刷题目录
内容有:动态规划系列、数据结构系列、算法思维系列、高频面试系列、计算机技术
![](https://static001.geekbang.org/infoq/7c/7c3c65c1db4c26d35a27401698e67199.png)
![](https://static001.geekbang.org/infoq/c8/c8f6ffd1987f33e50be64cd85e855fae.png)
![](https://static001.geekbang.org/infoq/39/39d8ee62b28d39bafabc4a5cdd5f6233.png)
![](https://static001.geekbang.org/infoq/41/4198d4be82be7af4ab6414726cc865f7.png)
优质内容展现
动态规划之背包问题
![](https://static001.geekbang.org/infoq/4c/4c91afe1f63ae55f1e4af370afa7d344.png)
动态规划之博弈问题
![](https://static001.geekbang.org/infoq/2e/2ea0c68371c02debe0e52b399d89d135.png)
动态规划之四键键盘
![](https://static001.geekbang.org/infoq/5f/5fa0ca4c277b28f34b9049682c4f3b6b.png)
快速计算完全二叉树的节点
![](https://static001.geekbang.org/infoq/60/602a383e05365b7389cacabeff7dd75e.png)
回溯算法秒杀数独问题
![](https://static001.geekbang.org/infoq/b1/b1bdf7aeb62405325d8765acb8d2ba6f.png)
区间调度问题之区间合并
![](https://static001.geekbang.org/infoq/90/909f01decc694c49f60b145a6dee92ee.png)
信封嵌套问题
![](https://static001.geekbang.org/infoq/2e/2ea892b1c33c10e3d85eaec80df17ff5.png)
如何高效寻找素数
![](https://static001.geekbang.org/infoq/6a/6adebd652b12e25069388f9970f48646.png)
接雨水问题
![](https://static001.geekbang.org/infoq/fb/fb60af4c0c292e1b7e75434a221fa0cb.png)
由于手册内容太多,在此只展示了部分内容。需要获取三份完整算法刷题手册的小伙伴可以点击这里即可获取到文章中的文档,资料!
第二份:LeetCode 刷题目录大纲
内容包含:数组系列、链表系列、动态规划系列、字符串系列、二叉树系列、滑动窗口系列、博弈论系列、位运算系列、二分法系列、其他题目
![](https://static001.geekbang.org/infoq/70/7089d98e32f651d6c32b105825058e3a.png)
![](https://static001.geekbang.org/infoq/86/861fb24955cd5cf6179c5c93839da14c.png)
![](https://static001.geekbang.org/infoq/aa/aadcc76bf5b22c1d860edc47525f4eac.png)
优质内容展示
数组系列
![](https://static001.geekbang.org/infoq/c6/c6a43d2b3c93cdd79dd174e7f983dc5b.png)
链表系列
![](https://static001.geekbang.org/infoq/7a/7a685bb8ab3a2b33dc4a07bea1e1c2b8.png)
动态规划系列
![](https://static001.geekbang.org/infoq/f4/f415142f56f1fa0994a73d613277dc0b.png)
二叉树系列
![](https://static001.geekbang.org/infoq/0b/0bb09e1c4f09baf76bc6b82adb7d2ebe.png)
滑动窗口系列
![](https://static001.geekbang.org/infoq/8b/8b663a0b3ea26d597dbb27aec0c3773d.png)
二分法系列
![](https://static001.geekbang.org/infoq/e7/e7f29e83084f7a082c0439ca77fd0d7a.png)
其他题目
![](https://static001.geekbang.org/infoq/db/dbded33db3adb705e73d854f320dc376.png)
第三份:LeetCode 刷题目录大纲
![](https://static001.geekbang.org/infoq/fe/feab421772ef278f398a2a586a551e21.png)
![](https://static001.geekbang.org/infoq/d8/d85efb9b7e96f29cef858c0aac3c7078.png)
![](https://static001.geekbang.org/infoq/7f/7fc6d9d8e67508b1b10ca8ef51dd1a64.png)
算法专题
![](https://static001.geekbang.org/infoq/fa/fa4cd900763eed03cebe8bfda25e3319.png)
一些模板
![](https://static001.geekbang.org/infoq/52/520b90d0e7f4e8568aba5bdb0c7c09d9.png)
Leetcode 题解
![](https://static001.geekbang.org/infoq/9f/9f6284f0d2b660354287352f9cb73f97.png)
![](https://static001.geekbang.org/infoq/58/5864e7b099ecaa30a39866223fb22237.png)
![](https://static001.geekbang.org/infoq/3b/3b4a290c5ecff22b699cc7e92b765390.png)
![](https://static001.geekbang.org/infoq/aa/aa3650ae7ce0896ce6bfbf5bed10567b.png)
总结
刚开始刷题时,确实是无从下手。
是因为从序号开始刷,刷到几道题就遇到 hard 的题型,会卡住很久,后面去评论区看别人怎么刷题,也去 Google 搜索最好的刷题方式。
后来发现按题型刷题会舒服很多,基本一个类型的题目,一天能做很多,慢慢刷题也不再枯燥,做起来也很有意思,最后也收到了不错的 offer。
由于手册内容太多,在此只展示了部分内容。需要获取三份完整算法刷题手册的小伙伴可以点击这里即可获取到文章中的文档,资料!
好了,以上就是分享的刷题指南,希望能够对你有所帮助。
评论