Skip to content

ruicore/algorithm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Algorithm

python3  codebeat badge  issue  forks  stars  license  twitter

说明

本仓库包含 LeetCode 前 400 道题目的题解,对每一道题(不包括会员题)都做了详尽的注释和说明,通俗易懂,不会使用什么华丽的技巧。仓库使用 Python3 作为实现语言,Python3 语言本身语法简单,并且提供了很多内置函数。对刚准备做题或者做题经验不太丰富的人非常友好,降低了入门的难度,不会让人望而生畏。

做题,做的是题,整理的是思路,是一个从量变到质变的过程。只有通过见识各种类型的题,打下基础。有了一定的基础之后,再对做过的题进行分类,归纳总结,才能有本质的提高。

就像学高中学数学一样,前期通过见识大量的题,并且认真对待每一道题,弄懂其中的每一道的思路。到了后面高三的时候,不论是自己总结(当然这样最有效)还是老师总结,你都能突然发现 哦,原来这些题都是同一个类型啊,这时你做题的效率和准确度都会有大幅提升。

LeetCode 常见题目的考察内容涵盖不同的类型。比如有考察 动态规划 的,考察算法思想 的,考察 数据结构 的,还有一些考察 位运算的,如异或这一类。

不建议初学者,或者还没有刷过题的同学首先就去关注这个题属于什么类型。作为初学者应该首要关注的是这个题,用了什么数据结构,考察什么算法思想,然后自己独立的实现它。如果看过题之后没有思路,那么就去看对应的题解,在看懂题解的情况下,独立的再实现一遍,向 LeetCode 提交通过。

这个过程中,你可能对某个数据结构不熟悉,对某个思想不熟悉,那么此时就是你 Google 的好时机。Learning by Doing 是一个非常好的学习方式,通过查阅资料,解决的某个问题,既能提高你的能力,又能给你带来满足感,是一个有效的正反馈。

使用建议

做 LeetCode 题目时,你应该先独立的思考,没有思路时,再到这里查阅。本仓库的题目按照序号开始编号,你可以通过 ctrl + F 找到对应的题解。找到题解并理解里面的内容之后,再独立的实现代码,向 LeetCode 提交通过。

千万不要看一句这里的代码,然后自己写一行代码,这样对自己的提升很小。

当你做题到一定量的时候,突然有一天你做题的时候发现 这个题根原来做过的某个题不是差不多吗,这就是你量变到质变的时候了。

改进

这个仓库起源于自己找工作的做题经历。本人也是非科班出身,知道找工作一定会做笔试题,就开始做 LeetCode 的题目,后来就有了这个仓库。

此仓库目前只是前几百道题的题解,并没有针对题解做细致的归类,也还没有做归纳性的套路总结(当然,当然,下一步就是做这个)。虽然归纳性的东西正在计划中,但是这个仓库对刚刚开始做题的小伙伴应该还是很有帮助的,这里的总结并不是炫技(作者也没有那个水平),而是希望通过做题增加找到工作的概率,让大家都能有所提高,找到心仪的工作。

最后,如果这个仓库给到您了帮助,请给予一个 Star,这也是对我的鼓励,是我持续更新的动力。

赞赏

如果本仓库对你有用,欢迎点个 star 😊