今天终于刷完leetcode的题了,同时分享一些资料
2013-12-10 16:22
676 查看
如题了……持续了将近2个月的leetcode刷题之旅今天终于暂时告一段落了(以后肯定还会加题)。
记得我当初刷的时候只有134题,现在就变成150题了,可以说这些题都是基础,但是却是十分强大的基础题,对于扎实编程功底很是有帮助,其中涉及到的链表、树等的题目更是如此。在涉及链表的题目中,我多次使用二级指针(什么是二级指针?例如ListNode **)来解题,所以对二级指针的运用也比以前熟练了很多。
不过今天做完这些题也并就是单单上来说一下,其实还在于和各位可能还在刷leetcode的同学share一些资料:
第一个是leetcode的题目分类表,参见这个链接:http://download.csdn.net/detail/fanfank/6691747
这份文档列出了leetcode几乎所有题目(大约134题)的分类以及难度指示,是刷leetcode的必备良品。现在leetcode总的题目数已经达到150题,所以有部分题目没有包含在这个文档中,但是——足够了。po主刷leetcode的时候参照了这份文档中的难度分级,从1开始刷到5,最终刷完150题。当然里面的题目难度分级对每个人来说都有一些不准确,因为不同人擅长的题目类型不同,但是即便这样也具有一定的指导意义。
第二个是我的所有leetcode的源代码,参见这个链接:https://github.com/fanfank/leetcode
里面的每个代码文件中至少有一个解法我亲自做的,另外一些解法可能是由我提供的解法2或者解法3,也可能是我参考到其他人有些比较好的代码贴上去了(别人的代码我会加注释注明)。有一些前期做的题目,例如“word-ladder”这样的题目,一开始水平不过太够所以代码比较丑,但是后面的代码基本都比较简洁高效(除非有部分我注明“ugly code”的代码是我觉得自己写得很差的)。
至于怎么样查找对应的源代码……这个很简单,直接ctrl + F(如果使用的是苹果的系统那么就是command + F)然后输入那个题目的名称就可以了……例如“word-ladder”。
文件的命名是按照leetcode对应题目中URL对题目的命名来决定的,例如这题“Evaluate Reverse Polish Notation”,它对应的题目的页面地址是:http://oj.leetcode.com/problems/evaluate-reverse-polish-notation/,那么在我的题解中文件的名称就是“evaluate-reverse-polish-notation.cpp”
第三个是我的一个大牛同学所有leetcode的源代码,参见这个链接:https://github.com/iphkwan/leetcode
我每次做完一题,都会和他的解法进行一下对比。
好了就是这么多,把全世界的leetcode题目都收服吧~!
记得我当初刷的时候只有134题,现在就变成150题了,可以说这些题都是基础,但是却是十分强大的基础题,对于扎实编程功底很是有帮助,其中涉及到的链表、树等的题目更是如此。在涉及链表的题目中,我多次使用二级指针(什么是二级指针?例如ListNode **)来解题,所以对二级指针的运用也比以前熟练了很多。
不过今天做完这些题也并就是单单上来说一下,其实还在于和各位可能还在刷leetcode的同学share一些资料:
第一个是leetcode的题目分类表,参见这个链接:http://download.csdn.net/detail/fanfank/6691747
这份文档列出了leetcode几乎所有题目(大约134题)的分类以及难度指示,是刷leetcode的必备良品。现在leetcode总的题目数已经达到150题,所以有部分题目没有包含在这个文档中,但是——足够了。po主刷leetcode的时候参照了这份文档中的难度分级,从1开始刷到5,最终刷完150题。当然里面的题目难度分级对每个人来说都有一些不准确,因为不同人擅长的题目类型不同,但是即便这样也具有一定的指导意义。
第二个是我的所有leetcode的源代码,参见这个链接:https://github.com/fanfank/leetcode
里面的每个代码文件中至少有一个解法我亲自做的,另外一些解法可能是由我提供的解法2或者解法3,也可能是我参考到其他人有些比较好的代码贴上去了(别人的代码我会加注释注明)。有一些前期做的题目,例如“word-ladder”这样的题目,一开始水平不过太够所以代码比较丑,但是后面的代码基本都比较简洁高效(除非有部分我注明“ugly code”的代码是我觉得自己写得很差的)。
至于怎么样查找对应的源代码……这个很简单,直接ctrl + F(如果使用的是苹果的系统那么就是command + F)然后输入那个题目的名称就可以了……例如“word-ladder”。
文件的命名是按照leetcode对应题目中URL对题目的命名来决定的,例如这题“Evaluate Reverse Polish Notation”,它对应的题目的页面地址是:http://oj.leetcode.com/problems/evaluate-reverse-polish-notation/,那么在我的题解中文件的名称就是“evaluate-reverse-polish-notation.cpp”
第三个是我的一个大牛同学所有leetcode的源代码,参见这个链接:https://github.com/iphkwan/leetcode
我每次做完一题,都会和他的解法进行一下对比。
好了就是这么多,把全世界的leetcode题目都收服吧~!
相关文章推荐
- 最近阅读的一些资料给大家分享:包括视差滚动,虚拟机安装fedora,sublime text2等等
- 分享一些C语言的学习资料
- 分享一些cocos2d手势识别资料
- 之前只是听说了github,今天学习了一下github的一些简单管理项目的命令,来分享下
- 分享一些资料(侧重Linux)
- 今天和大家分享一些面试注意细节
- 给大家分享一些Java基础学习资料,后续会不断的更新!
- 最近阅读的一些资料给大家分享:包括视差滚动,虚拟机安装fedora,sublime text2等等
- 分隔字符串。。。终于找了一些方法了,分享
- 今天终于鼓起勇气开始写一些东西了
- 给程序员的一些非常不错的资料【分享】
- 分享一些资料(侧重Linux)
- 今天收集的一些资料
- 分享一些学习资料-大量PDF电子书
- 从今天开始,继续写一些技术类博客,分享给大家。
- 关于QT的一些资料分享
- 分享一些资料(侧重Linux)
- 分享一些学习资料-大量PDF电子书
- 分享一些OSGI的资料