最近一位有着15年经验的老程序员和我们他认为最酷的6个学习编程/算法的网站,以下为他的博客原文: 我是一位拥有15年工作经验的程序员,从高中毕业的第一年就开始学习算法,毕业之后出国留学,便走上了算法研究道路。 但是,工作三年后,我更喜欢做产品/软件而不是研究。我转向技术/工程而非算法。但是,我个人认为对于开发人员来说,了解算法仍然很重要。而且我不认为一个不了解算法的人可以通过谷歌/Facebook的面试。
1. HackerRank 该网站在编程界非常出名,从初级到高级,开发人员到招聘经理等大多数程序相关岗位的人都知道这个网站。
hackerrank上有很多算法题,难度从低到高,除此之外,还有各种算法和数据结构(甚至是SQL)的题。你可以直接在上面编写代码,直接运行并查看结果,还可以查看评论看看看其他人都是如何解题的。 在面试过程中,也有一些企业让我来这个网站刷题,因此,你可以经常到这刷题巩固知识点。 网站地址:https://www.hackerrank.com/ 2. TopCoder TopCoder是最早的程序设计比赛网站之一,其中就有算法挑战赛,你可以使用其代码编辑器在线进行操作。单轮比赛每月在特定时间进行几次,编码员相互竞争,根据分数和解题时间排名。
在TopCoder上排名靠前的用户都是非常优秀的程序员,并且是经常参加各种编程竞赛的人。排名最高的人将拥有自己的博客,在那里他们可以写有关编程竞赛、算法、数学等所有他们想和大家分享的东西。 网站地址:https://www.topcoder.com/challenges/ 3.Geekforgeeks 如果你在执行算法时遇到难题,在Google上搜索解决方案时,你可能会经常看到以下页面。
这个页面说实话看起来有点丑,分类也不是很好,但是,它有许多常见算法练习的解决方案。每个解决方案包括许多不同的方法,以及每种方法的复杂性,这是一种非常有帮助的网站。 网站地址:https://practice.geeksforgeeks.org/ 4. Leetcode 另一个很受欢迎的算法培训网站是Leetcode。这个网站的算法数量并不亚于hackerrank,它主要有3个难度级别,分别是Easy / Medium / Hard(有些简单的问题也非常困难)。
算法面试都是从简单的问题开始,中级问题则是用于评估你的个人能力,困难问题则是为Facebook/谷歌面试而准备的,这个网站还有一个优秀的地方是它可评估你代码的性能,看看你的代码运行的快还是慢,是否可以进行优化等。 网站地址:https://leetcode.com/ 5.Daily Coding Problem
和其他网站不同的是,Daily Coding Problem上面没有习题列表,但是,如果你输入自己的电子邮箱,他会每天向你发送一种算法面试题给你尝试解答。题型同样也根据难易程度划分,Amazon / Google等公司的一些面试题就出自这里,假如你购买了高级套餐,就会获得解决方案。 网站地址:https://www.dailycodingproblem.com/ 6.Exercism.io
如果说以上网站是让你刷算法题的网站,那么Exercism就是让你学习编程的好地方。
尽管Exercism.io上面也有很多习题,但这些练习并不侧重于算法,而是侧重于编程语言的某一方面:
使用if / else循环
日期处理,字符串处理
如何处理错误,编写异步代码等
我使用此网站来了解有关Golang和Elixir的更多信息,如果你已经编程了一段时间,想学习一种新的语言,学习一种新的思维方式,那就去Exercism.io吧! 网站地址:https://exercism.io/ 以上就是我要和大家分享的6个超酷的用来学习算法的网站,我个人认为你不需要所有都去使用,如果想在面试之前进行练习,建议是用Skilled / Hackerrank / Leetcode。如果你是想学习一门新的编程语言那就直接选择Exercism。
-
算法
+关注
关注
23文章
4601浏览量
92703 -
编程
+关注
关注
88文章
3597浏览量
93624 -
编辑器
+关注
关注
1文章
803浏览量
31134
原文标题:6个超酷的网站,专门用于学习算法
文章出处:【微信号:TheAlgorithm,微信公众号:算法与数据结构】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论