21

刷了几千道算法题,这些我私藏的刷题网站都在这里了!

 4 years ago
source link: http://mp.weixin.qq.com/s?__biz=MzA5MTkxNTMzNg%3D%3D&%3Bmid=2650265582&%3Bidx=5&%3Bsn=73b1c03a1634074c45e5e60d109805a5
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

点击上方“ 涛哥聊Python ”,选择“星标”公众号

重磅干货,第一时间送达

来源: Python空间

vaei22M.jpg!web

遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活...

Nz2yErE.jpg!web

然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了 夜以继日哼哧哼哧刷题 的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网站放出来,让我们一起爽!

刷题,是这个世界上最有意思的事儿!

YVBN7j2.gif

当然刷题不能乱爽,你要知道刷题要干嘛,是找工作面试、研究生复试机试,是参加程序设计竞赛还是为了提高自己,在这里我将这些分为三类:收割 offer 版、ACM 竞赛版和提高版。

0x00 收割 offer 版

不管是找工作笔试面试白板试进大厂,还是研究生参加初试复试机试,数据结构和算法都是绕不过去的坎,刷题就成了很多人的需求,快来看看下面这些网站,变身刷题机器,收割 offer 吧!

1、leetcode

英文网址:https://leetcode.com/

中文网址:https://leetcode-cn.com/

估计 leetcode(力扣)大家都很熟悉了,都被推荐烂了,很多国内外的程序员在上面刷题,难度从 Easy、Medium 至 Hard 都有,据说很多面试官都会从中挑选各种题目,号称大厂的筛码工。

我很早就知道 leetcode,但是直到准备复试闲来无事的时候才在它上面刷了点儿题找感觉,发现上面的题型覆盖很广,像线段树、滑动数组、博弈论、扫描线等都应有具有,但是好像有的测试数据有点弱?有的题好像可以悄咪咪的水过去...

当然题目都是英文的,现在也有了中文社区,两个网址我都放出来了,还是建议大家首刷英文的,锻炼一下,一举两得,毕竟如果是搞 ACM 的话,题目都是英文的...

N7jIbuq.png!web

2、hihoCoder

网址:https://hihocoder.com

网站的技术团队来自于原北大 POJ 的开发团队,至于 POJ 会在后面的篇章中介绍,反正膜拜就完事了。一些知名的大厂比如微软、百度、腾讯、网易等会在上面举办在线编程比赛,风格倒是和 ACM 比赛类似。

如果仅止步于此还不至于让我推荐,当初与它的结缘是因为 hihoCoder 每周有周赛,每月有月赛。周赛是一道题,题目比较难但是极有意思,可以很好的拓宽自己的解题思路,月赛就更厉害了,题目均出自北大等一流高校玩 ACM 的菊苣出题,通过这个的检验可以迅速定位到自己真实的水平,同时了解自身在解决问题过程中的不足。

这将是展示自我真实水平的绝佳机会。

B3myaqQ.jpg!web

3、牛客网

网址:https://www.nowcoder.com/

牛客网作为国内内容超级丰富的 IT 题库,各种东西看的我眼花缭乱,题库+面试+学习+求职+讨论 360 度无死角服务,堪称"互联网求职神器"。它好就好在不只是一个刷题的平台,还是一个交流学习的平台,发个问题贴总有热心的大佬帮助,别问我怎么知道,我才不要说我也给人回答过问题...

说句题外话,我与牛客网的结缘还是因为...它上面有考研真题,我刷来着...

JBBVZ3I.jpg!web

63Ivuqr.jpg!web

4、计蒜客

网址:https://www.jisuanke.com/

计蒜客这个网站可能很多人不知道,他也有可以刷题的题库,也会定期举办比赛,当年和计蒜客有的交集也就是参加计蒜客举办的"计蒜之道"的线上比赛,还赢得过 T 恤,现在好像还在我家放着...

这么多年还记得这个网站的原因,是因为当年在某乎上关注了他们的 CEO,然后竟然被反关,着实把当年的我惊着了...

Y3aYJfY.png!web

0x01 ACM 竞赛版

PS:虽然这一部分的标题为 ACM 竞赛版,也只是因为这些在学校搞 ACM 的同学用的比较多,实际上所有的人都可以在下面这些网站上刷题,题目的质量和广度都是顶呱呱的,男女老少咸宜。

搞 ACM 的时候知道了很多 OJ(Online Judge),比如下图( 当然实际的数量肯定远远多于图中所展示的这些)

YFBZZzE.jpg!web

5、 HDU

网址:http://acm.hdu.edu.cn/

杭电(杭州电子科技大学)的 OJ 大概是国内最火的几个 OJ 之一了,大多数 ACMer 应该都知道(其实我想说所有来着),勿需多说,非常多比赛都在上面,比如每年暑假的多校联赛,朝鲜、外蒙等学校的队伍都会参加,想不知道都不可能。

现在上面大概有接近 6k 的题量,网上有很多的刷题顺序,刷题指南,感兴趣的玩玩儿...

Q3QfUrj.jpg!web

6、POJ

网址:http://poj.org/

这个就是我在介绍  hihocoder 的时候提到过的 POJ(Peking University Online Judge),同样作为国内最火的几大 OJ 之一,它的建立时间更早,一些上古时期的题目也能在上面找到,同样 POJ 也很出名,也是我最早刷题的 OJ 之一。

现在上面有 3k+ 的题量,关于 POJ 的刷题指南网上更是很多,同样欢迎去玩儿...

EbuMjaE.jpg!web

7、SDUT

网址:https://acm.sdut.edu.cn/

这个是我打开次数最多,刷题次数最多的 OJ,是我刷题之路开始的地方 -- 我本科母校 SDUT 的 OJ 平台。虽然我们学校不出名,但是我们集训队做东西是认真的,上面有接近 3k 的题量,并且在逐渐增多,简单题多一些,很适合刷题。

欢迎大家注册,多多刷题,我们集训队多年一直秉持开放的态度,欢迎多多交流...

6FNVRne.png!web

8、其它 OJ

最后附带一些其它同样优秀的 OJ 平台:

国内:

ZJU(浙大): https://zoj.pintia.cn/home

USTC(中科大):http://acm.ustc.edu.cn/ustcoj/

FZU(福大):http://acm.fzu.edu.cn/

HIT(哈工大):http://acm.hit.edu.cn/

国外:

URAL:http://acm.timus.ru/

SPOJ:https://www.spoj.com/

0x02 提高版

这一部分推荐的网站,非常有意思,如果想提高自己,体验比赛的快感,非常建议尝试。

9、Codeforces

网址:https://codeforces.com/

Codeforces 又被戏称为 CF,是一家俄罗斯的网站,当然还是用英文食用。这里的很好的比赛,很好的题目,很好的选手,简称"三好"。

CF 最吸引人的地方在于它那超级牛批的比赛系统,CF 上每个用户都拥有 Rating,也就是比赛积分,新用户默认为 1500 分,每次比赛就会在你的积分上加加减减,上面的比赛一般分为四种:Div1、Div2、Div3、Educational Codeforces Round。Div 的比赛一般是根据积分来的,每个积分段只能参加对应的 Div 的比赛,Div1的比赛是里面最难的,大佬基本都在这里。Educational Codeforces Round 则是类似 ACM 的比赛,提交之后立马出结果。

但是如果仅限这些也算不上超级,还有一个更有意思的是,CF 的比赛还提供一个 hack 功能,通俗点说就是你去看别人提交的代码,然后通过提交你想出的特殊测试用例然后找出别人代码的 bug,hack 成功则加积分,比赛更多了很多乐趣,在 hack 和反 hack 中斗智斗勇。

不过对国内来说,和俄罗斯存在时差,一般想参加比赛的话大多数要在晚上 11 点以后,按照基础的 2 个小时比赛时间,再加上 hack 和测评反馈的过程,然后再刺激一下,差不多一宿就这么交待了,不过其中的乐趣不足为外人道。如果没有时间,上面的题目还是可以自己拿来做的,题目质量超级好,很能锻炼自己。

FvE7vqa.png!web

10、Topcoder

网址:https://www.topcoder.com/

Topcoder 据说是世界上规模最大的编程网站,如果这样的话那这个 Top 就可以理解了,Top 的 coder 丫,这个我基本上没用过,可能是因为我不 Top,只能仰望...

想起它来的原因还是因为现在每次有比赛的时候都会给我发邮箱,搞得我想忘了它都不成...

YzumU3q.jpg!web

0x03 写在之后

虽然想写的尽量轻松些,不要让文章看起来太无聊,但在最后还是想认真的说一句:

刷题不要单纯的为了追求做题的数量

还是要以学会为目的

并且学以致用

iY3amiA.png!web

i22YBne.jpg!web

建议收藏!耗时3个月收集的《Python和人工智能》资料教程~

推荐一款常用的IDE插件,越用越喜欢

f2eEFvj.png!web

faUFJrF.png!web


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK