一、说明

主要跟随花花酱的CS讲堂以及算法刷题路线走
这里有几点刷题方法上的注意点:https://www.bilibili.com/video/BV1Jb411673Z
总结如下:

  • 200~300题刷2-3遍,至少100+小时的投入
  • 同一类型题目一起刷,总结规律和差异
  • 多看别人的(优秀)代码
  • 完整的手写实现,不要copy代码,增强肌肉记忆
  • 培养代码风格
  • 难题基本需要是特定算法才能解,所以需要了解各种算法

409b50d4-0e49-40ee-b84c-5e475a73644c.jpg

二、相关资源:

《算法导论 Introduction to algorithm》

73c747a0-dc09-4ba4-b7bb-bd90d49a0736.jpg

《DSACPP》

0.29567234867154907.png

视频课程 https://next.xuetangx.com/course/THU08091002048/4215520
电子资源 https://dsa.cs.tsinghua.edu.cn/~deng/ds/dsacpp/

《剑指offer》

何海涛-电子工业出版社、

《百面机器学习》

葫芦娃-人民邮电出版社

纯中文课后答题解题思路

https://github.com/azl397985856/leetcode

动画呈现解题思路

https://github.com/MisterBooo/LeetCodeAnimation

笔记整理的水平

https://zhuanlan.zhihu.com/p/86136802

🥥azl的算法笔记

https://github.com/azl397985856/leetcode
https://leetcode-solution-leetcode-pp.gitbook.io/leetcode-solution/

🥥halfrost的算法笔记

https://books.halfrost.com/leetcode/ChapterOne/Data_Structure/

🥥高畅的刷题笔记

https://github.com/changgyhub/leetcode_101

LeetCode官网

花花酱的刷题笔记
https://space.bilibili.com/9880352

DSACPP课程

表格中的主题:

  1. Search (BFS/DFS) -非常考验基本功,可以优先学习
  2. DP -动态规划,需要一定的刷题量才能比较好掌握
  3. Graph -网格grid也算是 背算法模板可以解决大部分问题
  4. Tree -递归,左右子树求解,构建root的解
  5. Binary Search -
  6. BST -
  7. HashTable -
  8. Greedy -
  9. List -
  10. Two Pointers -
  11. Divide and conquer -
  12. Recursion -

以上基本有200+题目,按照专题刷完可以提高效率。

其他:

刷题打卡组队 :https://zhuanlan.zhihu.com/p/120245953