mowatermelon / learn-es6

一个有趣的人写的有趣的前端基础
http://blog.iiwhy.cn/learn-es6
7 stars 5 forks source link

算法刷题相关建议 #45

Open mowatermelon opened 5 years ago

mowatermelon commented 5 years ago

算法刷题网站推荐

国内

力扣

https://leetcode-cn.com/problemset/all/

leetcode中国

nowcoder

https://www.nowcoder.com/

牛客网作为中国最大的IT题库,来到这就是一个字,刷~而且结合着论坛,求职,给程序员很好的一个体验,里面的帖子都很有含量,要不就是你去提问总有热心牛友帮你回答,牛客网的CEO叶神,牛妹也会经常出没,帮助大家。

lintcode

https://www.lintcode.com/zh-cn/

这个被称作中文版的leetcode,也是可以做为编程能力提升的一个中转站。

hihocoder

http://www.hihocoder.com/

对这个网站的好感度也比较好,可能是因为跟acm的风格很像的缘故吧,每周都会有一个竞赛题目,可以参与其中,据说最早来自于原北京大学POJ团队,一周一个编程题,非常不错的,主要是有一定趣味性。

codevs

http://www.codevs.cn/problemset/

OI 竞赛网站,全国信息学竞赛专用刷题网站。

从专业角度来看题库比较全,容纳了绝大多数题库并购买了国外的一些正版题库的版权。

评测系统专业,题解和论坛交流的系统都用起来很方便,也有稳定的大量使用者。

从界面来看基本是最新的,很符合年轻人口味。

luogu

https://www.luogu.org/

洛谷刷题,题目比较全,界面比较友好。

赛码网

http://www.acmcoder.com/index

IT笔试加分利器

uestc OJ

https://acm.uestc.edu.cn/home

https://github.com/lutece-awesome/osiris

电子科技大学OJ平台,墙裂推荐,界面比其他大学的OJ界面好太多。

POJ

https://poj.org/

北京大学的OJ,上面题目有点久远,不过很适合上手,题目相对比较简单,经典算法会比较多,不过不是特别建议这个了,经典题目在其他很多网站上也能找到的,如果就想来看看这些经典题目,也是可以的。

ZOJ

https://acm.zju.edu.cn/onlinejudge/

这个是浙江大学的Online Judge,也是经典题目会比较多,更新也是几乎到一个阶段了,我已经很久没有来过了。

HOJ

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

杭州电子大学acm

july刷题总结

https://github.com/julycoding/The-Art-Of-Programming-By-July/blob/master/ebook/zh/Readme.md

计蒜课

https://nanti.jisuanke.com/

有相关课程,比赛和题库

国外

topCoder

https://www.topcoder.com/

就这名字就足以让人感觉到它的地位了,没错,这可是全世界规模最大的程序竞赛网站了,也会有一些算法竞赛,这个比较适合一些高端的或者搞acm的,也会举办一些比赛,能参观一下也是多少人心之所向。

leetcode

https://leetcode.com/problemset/all/

美国的刷题网站,支持多种语言,目前只支持英文刷题。

HackerRank

https://www.hackerrank.com/domains/algorithms?filters%5Bstatus%5D%5B%5D=unsolved&badge_type=problem-solving

专门举办各种算法竞赛的网站,只支持英文。

VJ

https://vjudge.net/

这个是一个集成平台,收集了很多平台的题目。

POJ ZOJ UVALive SGU URAL HUST SPOJ HDU HYSBZ UVA CodeForces Z-Trening Aizu LightOJ UESTC NBUT FZU CSU SCU ACdream CodeChef CF::Gym OpenJudge Kattis HihoCoder HIT HRBUST EIJudge AtCoder HackerRank 51Nod TopCoder E-Olymp

Codility

https://codility.com/

这个网站也是非常有名的,主要是帮助各大公司笔试的,可以在线编程,而且支持的语言非常多,很适合来这列刷题的,所以英语不好的一定要多学习的,其实英语这个东西就是你越不看英文的就越没有感觉,身为一个程序员,英文不好怎么行呢

Codeforces

http://codeforces.com/

这个网站是俄罗斯的最大的算法比赛网站了,可以和大家交流学习,也是一个自学的好地方,当然,要有一定的自学能力。

AtCoder

https://atcoder.jp/

这个网站是 日本最大的算法竞赛网站,题风很棒。有英文和日文题解,很贴心,但是我们应该很少有人能够用日语看题看网站,所以我们可以将网站调成英文的。

Timus Online Judge

http://acm.timus.ru/

这个网站是一个俄罗斯的题库,页面特别朴素,里面的题目也是比较适合有一定基础的来这里提升。

SPOJ

https://www.spoj.com/problems/

全称是Sphere Online Judge (SPOJ) - Problems,这个网站是波兰的,但是讨厌的是广告好多,弄的不知所以,界面还挺好看的,也是有一定基础才可以。

USACO

http://www.usaco.org/

全称是USA Computing Olympiad,usaco是美国中学生的官方竞赛网站。

是美国著名在线题库,专门为信息学竞赛选手准备。推荐直接阅读英语原文,既准确可靠又可提高英语水平。

做题方式模拟正式比赛,采用标准测评机、文件输入输出、直接提交程序源文件的测评方式。

网站的Training题目全面,是学习信息学不可不知的网站,每年NOI,NOIP 都会参考上面的题目。每道题附有详细题解,可查看测试数据和运行结果,便于调试、发现错误并改正。

采用章节递进的层次结构,由易到难,讲授知识、练习编程结合,题目必须依次完成,避免了只挑简单题做的行为。各章节犹如一本竞赛辅导书,形成了一个鲜明的知识结构,利于OI初学者和高手逐步提高水平,充分学习信息学各方面知识,避免偏颇。

UOJ

https://uva.onlinejudge.org/

全称Valladolid Online Judge,西班牙Valladolid大学的Online Judge。是最古老也是全世界最知名的Online Judge,这个是比较适合初学者的。国内也就是那么OJ,其实可以一段一段的练习,永远不怕练的多。

programmingpraxis

https://programmingpraxis.com/

此网站编程练习不保存分数、不排名、不竞赛

projecteuler

https://projecteuler.net/

有590道题,会显示难度水平和提交完成率

careercup

这个网站在墙外

https://www.careercup.com/


mowatermelon commented 5 years ago

书籍推荐

cc150

http://www.hawstein.com/posts/ctci-solutions-contents.html

全称Cracking the coding interview,是国外找工作的神书,而且的确写的很好。里面除了算法题,还有计算机基础知识等内容,很不错。适合想去外企的人仔细阅读,而且最新版已经比150题多了。总之,外企必备!

这个可能小白或者没有面试经验的人没有听过这个,这本书如果你还是不熟悉,那就直接上中文的:《程序员面试金典》。

主要也还是练习,国内牛客网上有这个里面的题目的在线练习,虽然没有全部的题目,但是也是国内最好的了。

剑指offer

可以说也是求职面试的过程中人手一本,所以也并不陌生,书上多是c++语言实现的,在线练习的话也是牛客网上也有,支持多个语言,可以在这里刷题。

mowatermelon commented 5 years ago

刷题建议

企业分类 实质建议
国企、银行、科研单位 Leetcode简单、中等难度最好刷一遍,有时间再过一遍思路。
创业公司 Leetcode全部难度上机刷一遍,然后把不会的题纸上在重新写一下。
国内互联网 Leetcode全部难度上机刷一遍,纸上再写一遍。同时尽量涉及难度较高的平台(Codility),或者多去几家公司面试,以赛代练。
国内外企 Leetcode至少全难度刷一遍,CC150纸上写一遍。想提高Microsoft/Google等在线笔试通过率的,多去玩玩Hihocoder等在线笔试平台。
外企总部 Leetcode困难程度烂熟于心,尽量达到ACM入门标准,甚至稍高一点比较有把握。