6个超酷的练习算法,学习编程的网站

在不了解算法的前提下,您无法通过Google或Facebook的采访。 那么为什么不现在学习。

我是一位拥有15年以上经验的程序员。 从高中开始的第一年,我在算法上学习和工作很多。 在我毕业之前,我一直都在学习并对它充满热情。 毕业后,我开始出国学习,走了研究道路。

但是,工作3年后,我更喜欢做产品/软件而不是研究。 我转向技术/工程而非算法。 但是,我个人认为,对于开发人员来说,理解算法仍然很重要。 而且,我认为您可能不了解Google或Facebook而无法通过面试!

> Photo by Fabian Grohs on Unsplash

1. HackerRank

从初级到高级,从开发人员到招聘经理,该网站在编程界都是非常有名的。

> hackkerrank.com

Hackerrank有许多算法,难度从低到高,以及各种算法和数据结构(甚至是SQL)。 您将编写代码,直接运行并查看结果,或查看讨论以了解人们如何解决它。

在我的采访过程中,也有一些公司让我来这里进行测试(算法+多项选择+论文)。 因此,您可以来这里做更多练习并习惯它。

2. TopCode

> https://www.topcoder.com/challenges/

TopCoder是最早可以相互竞争的程序员的在线"竞技场"之一。 它提供了算法挑战的列表,您可以使用其代码编辑器在线进行操作。 单轮比赛每月在特定时间举行几次,编码员相互竞争,以最高分最快地解决挑战。

在TopCoder上排名靠前的用户是非常优秀的程序员,并且经常参加许多编程竞赛。 排名最高的人将拥有自己的博客" PETR MITRICHEV编写的ALGORITHMS WEEKLY",他们可以在其中撰写有关代码竞赛,算法,数学以及任何喜欢的东西的文章。

3. Geeksforgeeks

如果您在执行算法时遇到麻烦,在Google上寻找解决方案后,您可能会多次看到该页面。

> https://practice.geeksforgeeks.org/

这个geekforgeeks页面看起来有点……很丑,这些练习的分类不是很好。 但是,它有许多常见算法练习的解决方案。 每个解决方案包括许多不同的方法,以及每种方法的复杂性/内存。 这是非常有趣和有益的阅读。

因此,有时您可以在主页上看到此页面/解决方案示例的流行算法!

4. Leetcode

另一个受欢迎的算法培训网站:Leetcode。 在此问题上的数量不亚于hackerrank,有3个主要难度级别,分别是Easy / Medium / Hard(某些简单的问题非常困难)。

> https://leetcode.com/

当我去算法面试时,经常有人问我一些简单的问题,用中级来评估能力,而困难是针对Facebook / Google面试。

与其他页面相比,此页面也可以很好地衡量您的性能/运行时代码,以查看您的代码运行快速还是慢速,是否可以优化。

每日编码问题

观看CS Dojo的Youtube频道时向我介绍了该页面-一位Google员工辞职以担任YouTube员工。

> https://www.dailycodingproblem.com/

与其余页面不同,此站点没有作业列表。 相反,您输入电子邮件,他们每天都会发送给您1种算法来尝试。

这些也是Easy / Medium,像Amazon / Google这样的公司用来采访候选人。 如果您购买了高级套餐,将获得解决方案。

Exercism.io

如果其他页面要练习算法,那么练习就是学习编程的好地方。

> https://exercism.io/

关于锻炼的练习很多,但是这些练习对算法的要求不是太重,但是对使用编程语言的要求却很重:

  • 使用if / else循环。
  • 日期处理,字符串处理
  • 方法分离,班级组织
  • 如何处理错误,编写异步代码

我使用此网站来了解有关Golang和Elixir的更多信息。

如果您已经编程了一段时间,想学习一种新的语言,学习一种新的思维方式,那就去运动吧!

总结

在本文中,我分享了6个超酷的网站来练习算法和学习编程!

我个人认为您不需要学习太多,如果想在面试之前进行练习,请访问Skilled / Hackerrank / Leetcode。 或者,如果您需要学习新的语言,请选择运动。

  • 发表于:
  • 原文链接http://news.51cto.com/art/202006/618315.htm
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券