“码”不停蹄,助你高“粽”
又到了一年毕业就业季了,作为即将踏入码农行业的人来说,要准备校招面试,怎么能不去刷刷LeetCode呢?
什么是LeetCode
LeetCode是一个美国的在线编程网站,它收集了各大公司的经典算法面试题,用户可以选择不同的语言进行代码的在线编写、编译和调试。而且LeetCode提供了交流平台,一些大神们会将自己的算法贴出来共享,大家可以学习借鉴别人巧妙的编程思维,以提高编程效率。
LeetCode题库日渐扩大,支持绝大多数主流编程语言的算法题和编程题,题量足够大。刷题顺序从难度上来说建议先从easy的开始,再进一步到medium,进阶的hard量力而行,可按照Tag进行练习。另外LeetCode的题型都比较简单明了,比如其中的算法题大都是有一定的套路所在的,并不需要的特别复杂的理解,一般都不会超过百行代码。但并不意味着LeetCode的题目非常简单,实际上LeetCode基本上涉及到了所有常规的算法类型。新手的话建议从Learn的内容开始,这个版块主要教你学习数据结构和基本算法,教学篇和相应的练习题结合,是很好的学习开端。
讨论区很关键
同一道题的解法往往有多种解题思路和方式,LeetCode的讨论区里面充满着大神们各种天花乱坠的框架结构和解题思路,很是让人膜拜。讨论区沉淀了大量的优质内容,有些甚至比官方解答还要巧妙,详细易懂,很多时候真正能打开你思路的,是讨论区各路大神的解法荟萃。
LeetCode配合GitHub
算法其实和高数水平、编程语言的关系不大,需要用到什么样的语言就用什么。算法主要是一套思维方式,使用不同的编程语言就有不同的规则。就像平时打篮球一样,篮球运动有一套篮球的规则和技巧,而如果踢足球的话就有另外一套规则和技巧。
不少人都会一边做Leetcode的题目一边在Github上repo,这样不仅对自己的解题思路有所记录,还能方便查找。不少刷Leetcode的高手,他们的答案也是写在自己的Github上,你也可以通过Github成功找到他们。在此给大家推荐几个GitHub上不同编程语言的LeetCode题目和相应的解法,希望能够对大家提高编程水平有所帮助。
C++ 题解库
C++ 题解库,该仓库作为 LeetCode 题解库的鼻祖,是由耗子叔于 2014 年创建,算是 GitHub 上创建最早的 LeetCode 题解库,同时也是现在 Star 数最高的一个。该项目主要实现了 C++ 的 LeetCode 题解,非常适合广大程序员查看。
开源地址:https://github.com/haoel/leetcode
Python & Java
项目作者 QiYuan Gong 是东南大学的博士生,现为英特尔公司的深度学习工程师,它在 GitHub 上创建了这个以 Python 与 Java 为主的题解库。现在身边不少搞算法的朋友,都以 Python 作为首选的编程语言,相信这个库你们一定会喜欢。
开源地址:https://github.com/qiyuangong/leetcode
aQuaYi/LeetCode-in-Go
最近国内某个知名企业的代码泄露,为 Go 语言的推广做出了不可磨灭的贡献,因此在这里,也为大家献上一个基于 Go 语言实现的题解库,希望大家在阅读某个项目源码的时候,也别忘了多学点算法。
开源地址:https://github.com/aQuaYi/LeetCode-in-Go
LeetCode-swift
项目作者故胤道长毕业于卡内基梅隆大学,先后就职于 Uber、Amazon 等公司,同时也是 GitHub 全美前 20 名的 Swift 开源作者之一。道长在 2016 年的时候创建了该库,并于微博进行推广后开始广为人知,后续不少开发者加入了项目维护,使得更新也较为频繁。该仓库按照数据结构与公司对 LeetCode 进行了分类,使其目录结构看起来更加清晰。目前收纳的有 Google、Facebook、Snapchat 等多家公司的 LeetCode 题解。
开源地址:https://github.com/soapyigu/LeetCode-Swift
LeetCode for VS Code
该插件由微软的一名工程师开发,现已正式上线,装上之后,就可以在 VSCode 上愉快的刷 LeetCode,在听音乐、看小说等沙雕插件横行的时代,该插件可谓是一股清流,建议当前有在刷 VSCode 的同学装一下。
开源地址:https://github.com/jdneo/vscode-leetcode
其实道理大家都懂,关键是能不能坚持下去,激发出自己要恰饭的欲望。最后,祝大家端午安康,如愿找到心仪的工作;今年六月的高考生们高“粽”状元!