当前位置: 华文星空 > 知识

有哪些学习算法的网站推荐?

2012-07-20知识

算法是程序的灵魂。以下从在线题库、在线提交程序源代码等维度推荐一些优秀的网站,希望能对题主有所帮助。

一、在线题库

算法学习,本质上是学习一门语言。学习语言的要领在于看、听、说、练。对于新手、进阶的信息安全工作者来说,刷题能够让算法能力得到一个质的飞跃。

1、hackerrank - https://www. hackerrank.com/

面向程序员、Hacker们的社交网络,在算法、数学、SQL、函数式编程、AI等众多不同领域为挑战者们提供了相应的编程题目,用户可直接在线完成挑战。

2、Topcoder - https://www. topcoder.com/

成立于2001年,最早的在线编程竞技平台之一,网站提供了一系列的算法挑战,参赛者可使用代码编辑器直接进行在线作答,比拼获胜者可获得竞赛赞助方提供的奖励。

3、Geeksforgeeks - https://www. geeksforgeeks.org/

Geeksforgeeks涵盖文章、解释和代码解决方案等内容,除了提供基础的编程、算法学习资源外,在「算法和数据结构」主题中,提供测试项目,解题者可以在在线编辑器中进行挑战。

4、codeforces - http:// codeforces.com/

此网站是由来自萨拉托夫州立大学Mike Mirzayanov领导的一个团队创立和维护,是一个举办比赛、做题和交流的平台,网站自带blog功能,可以求助/发布题解。

5、lintcode - https://www. lintcode.com/

支持中英双语,汇集了算法、数据结构,人工智能,系统设计等众多领域的题目,网站还会举办编程比赛,很多算法爱好者在这里切磋技艺。

此外:

1、Codewars - https://www. codewars.com/

2、Leetcode(https:// leetcode.com/ )

3、Github (https:// github.com )

4、codehs - https:// codehs.com/

5、visualgo - https:// visualgo.net/

6、CoderPro - http:// coderpro.com.cn/

7、codesignal - https:// codesignal.com/

8、CodinGame - https://www. codingame.com/

9、codechef - https://www. codechef.com/

10、v2ex - https://www. v2ex.com/

11、Online Judge - https:// acm.sjtu.edu.cn/OnlineJ udge/

12、codecademy - https://www. codecademy.com/

13、programmingpraxis - https:// programmingpraxis.com/

二、在线提交程序源代码

Online Judge系统最初使用于ACM-ICPC国际大学生程序设计竞赛和OI信息学奥林匹克竞赛中的自动判题和排名,现广泛应用于世界各地高校学生程序设计的训练、参赛队员的训练和选拔、各种程序设计竞赛以及数据结构和算法的学习和作业的自动提交判断中。

1、北大POJ - http:// poj.org/

免费的公益性网上程序设计题库,包含3000多道饶有趣味的程序设计题,是个提供编程、算法题目的网站,兼容Pascal、C、C++、Java、Fortran等多种语言。

2、杭电HDU - http:// acm.hdu.edu.cn/

杭州电子科技大学的在线评测系统,中国最受欢迎OJ之一,题目数量多,来源广,有很多优质好题。

3、浙大ZOJ - http:// acm.zju.edu.cn/onlineju dge/

浙江大学的在线评测系统,国内起步最早的几个OJ之一,题目数量约2000道,打开速度较快。

4、洛谷 - https://www. luogu.org/

创办于2013年,是基于网页形式的信息学在线评测系统,它不仅仅是一个在线测题系统,还拥有强大的社区、在线学习功能。

5、RQNOJ - http://www. rqnoj.cn/

RenqingNet Online Judge,2007年8月上线,集成了题库、测评、讨论、团队、比赛等主体的网络平台,是国内OJ(信息学在线测评)开放平台开发和运行的先导。

其它:

1、大视野在线测评BZOJ - http://www. lydsy.com/JudgeOnline/

2、UOJ - http:// uoj.ac/

3、福州大学 - http:// acm.fzu.edu.cn/

4、上海交大OJ - http:// acm.sjtu.edu.cn/OnlineJ udge/

5、中科大OJ - http:// acm.ustc.edu.cn/ustcoj/

6、宁波工程学院 - https:// ac.2333.moe/

7、波兰SPOJ - http://www. spoj.com/

8、日本JOI - http://www. ioi-jp.org/index.html

9、LIGHTOJ - http://www. lightoj.com/

10、浙江工业大学OJ - http:// acm.zjut.edu.cn/

以上,一股脑推荐很多网站,但并不意味着所有的都需要花大量的时间和精力去研究。在算法学习中,首先自己要找出自己的问题总是出在哪里?最薄弱的环节是哪一个?只有发现自身问题,知道如何学习去提升技能,最终才会学以致用。