**刷刷LeetCode**------>找工作做准备
主要的目的:
1、熟悉各互联网公司的算法题目,为**找工作做准备**。
2、复习以前学过的编程语言,LeetCode支持几乎所有主流编程语言,大家可以用不同语言来做题。
3、熟悉常见的算法和数据结构,LeetCode提供了交流平台,一些大神会将自己的解法贴出来共享,有些巧妙的解法实在令人叫绝,虽然几乎都是英文,但上面的国人也特别多(中文拼音名字>_<)。
4、学习别人的编程思维,加快编程的速度,避免常见的BUG。
**LeetCode的题目并不多,目前大概有358道,能做的题应该有150多道吧。**
关于LeetCode的刷题时间:个人认为大概是要一个月左右,如果你是大神的话,也许大概能在两到三个星期间刷 完,不过做为新手,除了埋头做题,更重要的是去讨论区看看别人的代码或思路。
首先我们需要在leetcode上注册一个账号,然后登录,开始我们的编程吧!
一、选择题目类型
最上面标签栏Problems,给出了三个分类:Algorithms、Database、Shell,分别表示算法题、数据库题、Shell脚本题,第一个就是我们所需要的算法题。
二、选择算法题
点开Algorithms后,我们可以看到一列题目的列表,每个题目都有独一无二序号,后面的接受率(Acceptance)表示提交的正确率,Difficulty表示难易程度。
LeetCode按难易程度分成了:Hard、Medium、Easy三个级别。
Easy级别一般并不需要太多思考就可以想到算法,甚至可以通过直接的方式,特别适合新手去熟悉编程语言。
Medium级别就会有些难度,一般都会涉及到经典的算法,需要一定的思考。
Hard级别是最难的,有些时候是算法本身的难度,有些时候特别需要你考虑到各种细节。
每个题目前面的小箭头表示该题已经完成。题目列表最上方有一个Choose one filter,可以将已完成的题目从列表中去掉。
三、筛选某一类型的题
如果我们只想要找某一类型的题,可以通过Tags或Company来筛选
在题库的右边栏可以看到如下,这里列出许多公司的题目
四、如何和别人讨论
每个题目都有各自的Discuss按钮,点击进入后,就能看到了讨论区。
五、关于代码编写、测试与提交
点开我们选择的题目后,就可以进行代码编写了,LeetCode一般都会直接提供一个函数式接口,我们只需要编写函数内部就可以了,而需要考虑到库文件,另外,在上面选择栏中,可以切换选择自己需要的编程语言。
程序编写完了之后,不要急着提交(Submit Solution 按钮),先可以测试运行下(Run Code)
我们还可以点开Custom TestCase旁边的小框,点开后,可以在里面输入我们自己设定的输入值。
一般情况,数组的输入形式是[a1,a2,a3,a4……]
当然我们测试完整无误后,再选择提交Submit Solution。
如果出现错误,会有提示。
如果正确无误,会有如下提示:
我们可以点开More Details查看详细结果说明
或者点开Next challenges 旁边的题继续做题。
六、查看自己提交的题目
在最上面标签栏找到自己,选择:
My Submissions:可以找到自己提交的题目(包括了正确提交和错误提交)提交的代码也是都是可以看到的
Manage Sessions:主要是管理自己的提交情况,错误率和正确率,总完成率之类。
每道题旁边的My Submissions可以找到自己的对于该题的提交情况
点开后,就可以找到自己过去所有的提交,
点Accepted 或 Wrong Answer就可以查看自己过去提交的代码情况,当然还有得分。