编程竞赛的最佳资源合集
Posted 六一编程网
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编程竞赛的最佳资源合集相关的知识,希望对你有一定的参考价值。
根纳季·科罗特克维奇(Gennady Korotkevich),彼得·米特里切夫(Petr Mitrichev),亚当·德安吉洛(Adam D’Angelo)… 您听说过上述名字吗?我告诉你他们是谁...
前两个人(Gennady Korotkevich,Petr Mitrichev)是世界上最具竞争力的程序员,而最后一个人(Adam D'Angelo)也是Quora最具竞争力的程序员和联合创始人之一。
编程是整个宇宙中最愚蠢的事情之一,因为你需要告诉你的计算机如何做某事,但是上面所有的名字都是以做这种愚蠢而闻名的。现在你不能否认,这是一个有价值的技能集,如果你真的有兴趣做这件最愚蠢和最有趣的事情(笑话),然后一个直截了当的建议是…选择一门语言,学习编码的基本原理,开始在编码挑战网站上练习,进入竞争性编程。
竞争性编程是获得顶级产品公司关注和面试机会的最佳途径,但问题是如果你是编程菜鸟,该从哪里开始?哪一个网站好?如何与其他人参与编程竞赛?所以下面我们列出所有这些网站和比赛,将为您提供这些问题的答案,关于竞争性编程…
GeeksforGeeks(https://www.geeksforgeeks.org/)
GeeksforGeeks主要关注计算机科学主题和DSA基础知识。它有很多文章,对代码及其解决方案进行了适当的解释,因此您在理解代码背后的逻辑时不会遇到困难。该站点提供多种语言选项来解决问题。该站点还可以用于安排就业或面试,它是专门为顶级公司聘请程序员担任软件工程或开发职位准备的。
该网站有多种编码挑战。这些挑战分为数据结构和算法的不同主题,这将帮助您在每个主题上打下坚实的基础。您可以在该网站上找到所有容易、中等和困难级别的编码问题。您还可以参加各种课程来练习和准备技术面试。
TopCoder(https://www.topcoder.com/)
TopCoder是著名的编码挑战网站之一。在编码竞赛中引入排名的功劳归功于该网站,但坦率地说,这里的问题更加复杂,因此该网站适合高级程序员。一旦您掌握了编程知识,那么移至该站点将更为有益。您可以在此站点上找到很多选项,例如应用程序,聊天机器人,网站,设计,软件开发,还可以在此处测试和修复错误。
TopCoder competition SRM(单轮比赛)为您提供了与其他程序员竞争的机会。他们还主办活动TopCoder公开赛(TCO)。您也可以赢取现金奖励,在这个网站上提供最好的解决方案。IBM、Google、eBay、Microsoft、SoftBank、Nvidia这些领先的公司都从这个网站招聘候选人。
HackerRank(https://www.hackerrank.com/)
该站点拥有约700万开发人员,迄今为止已经接受了超过2100万次代码挑战。HackerRank是一家总部位于美国的组织,他们在算法,数学,函数式编程,SQL,AI等不同领域都面临挑战。您可以找到挑战的讨论区和排行榜,也可以提供有关问题的解释,从而为解决方案提供适当的指导。
HackerRank对初学者来说非常好,因此即使您要编写第一个程序“ Hello World!”,HackerRank无疑也会为您提供这个机会。它具有一个不错的用户界面,其中预先编写了样板代码,可帮助初学者开始具有竞争力的编码。他们每月举办一些竞赛,例如CodeSprints,101 Hacks,HourRanks。您可以在“代码周”中访问“竞赛”链接以了解详细信息,也可以在此处创建竞赛并鼓励程序员相互竞争。
HackerRank的四大核心领域是实践、竞争、工作和领导层。因此,在这里尽可能多地练习,设置好排名,参加竞赛,并从该网站获得领先公司的聘用,如Adobe、LinkedIn、Twitter、DropBox、Booking.com、CapitalOne、华盛顿、华盛顿邮报、戴尔、RedHat、Uber等。
CodeChef(https://www.codechef.com/)
CodeChef是一个基于印度的竞争性编程网站,有一个很大的程序员社区。这是Directi的一项印度教育计划。问题分为初级、简单、中等和困难等不同级别。
一些初学者发现此网站有些困难,即使他们正在此处解决简单级别问题也是如此。因此,如果您从最基础的开始,那么在HackerRank之后切换到该网站将是一个不错的选择。这个网站的最好之处在于,如果您无法解决问题,则可以检查评论,再次尝试写一个解决方案并被接受,如果您解决了问题,仍然可以检查其他优秀编码人员的代码,为同一问题找到最佳解决方案。通过这两种方式,您都会学到很多东西。
Codechef每个月主要举办三场比赛,即长挑战赛(为期10天)。Codechef还举办全球编程活动Snackdown。他们提供多种语言选择,程序员使用讨论区发布他们在练习或竞赛中遇到的问题。AWS,三星,阿里云这些顶尖的公司从此网站招聘候选人。
LeetCode(https://leetcode.com/)
谷歌、亚马逊、脸谱网、苹果这些主要科技公司从LeetCode招聘候选人,名单并没有到此结束。Twitter、Yahoo、Uber、Pinterest、Bank of America和许多基于产品的公司都从LeetCode中挑选程序员,因此你不能否认,这个网站是程序员破解技术面试的最佳网站之一。
LeetCode面临着190多个挑战,但是您需要记住,该站点在各个主题上都有更复杂的问题(对经验丰富的程序员有好处),因此,它特别适合顶级高科技公司中的软件工程职位。他们有一部分文章可以帮助您理解某个问题,并且您还可以在此网站上对各种公司进行Mock访谈。他们每周都会举办编码竞赛,您可以参加并设定良好的排名。他们的主要重点是帮助人们找到工作,因此,如果您的目标是上述大型科技公司,请访问这里并在此站点上挑战。
SPOJ (Sphere Online Judge)(https://www.spoj.com/)
SPOJ是一个在线裁判系统(不是竞争性编程网站,但您可以挑战并像其他平台一样参与),在不同主题上有超过20k的编码挑战。挑战范围从简单到硬编码问题。SPOJ有一个很好的社区,如果您在编码方面遇到问题,可以提供帮助。您可以从最大提交数量开始解决问题,并在此处关注或检查优秀编码员的提交。一旦解决了大约50-70个问题并树立了信心,您就可以参加不同的比赛。SPOJ在其站点上还有一个论坛讨论区。
Codeforces(https://codeforces.com/)
Codeforces是一个俄罗斯网站,最适合竞争激烈的程序员,并且更频繁地举办比赛。他们每月组织2至4个小时的4至5场短期比赛。有时他们每周还会举办2-3场比赛。它们具有多种语言编码选项。参加很多比赛后,您还可以创建自己的比赛并通过此网站赚钱。
这是准备ACM-ICPC(编程奥林匹克)的好地方之一。您可以在此处对问题进行排序和练习问题,也可以使用其博客系统提问。该网站拥有强大而庞大的社区以寻求帮助。我们建议一些有经验的程序员使用此站点,因为对于初学者来说,这里的挑战很可能太过复杂。
Project Euler(https://projecteuler.net/)
“Euler计划的存在是为了鼓励,挑战和发展任何对迷人的数学世界感兴趣的人的技能和乐趣。” 这是在此站点上编写的内容,因此您可以得出该站点非常适合数学难题的想法。因此,如果您可以应对数学和计算机编程方面的挑战,请访问此站点以解决问题。
您将要编写计算机程序来解决一些数学公式或方程式。他们还有一个针对每个问题的论坛。提供25个问题的解决方案之后,您可以达到一个新的水平。访问链接 GeeksforGeeks Project Euler(https://www.geeksforgeeks.org/project-euler/)以了解其工作原理。
HackerEarth(https://www.hackerearth.com/)
该网站也是一家印度初创科技公司,主要关注竞争编程和招聘挑战。他们有一个超过250万开发商的社区。该平台支持35种以上的编程语言,与其他平台一样,您可以在不同的主题(数据结构、算法、Python、机器学习)上练习问题。这个网站很适合准备面试的人。
该网站提供了深思熟虑的挑战,这些挑战大多数对经验丰富的程序员都是有益的。他们每月举办一次编码挑战和黑客马拉松。他们的挑战Code Monk在程序员中颇受欢迎。ThoughtWorks,亚马逊,埃森哲,沃尔玛实验室,IBM,Intuit是使用HackerEarth的一些领先公司。
Coderbyte(https://coderbyte.com/)
对于初级和中级程序员,Coderbyte是一个不错的网站。他们以各种编程语言提出了200多个挑战。该网站非常适合面试,您会发现挑战的难度从容易到困难。如果您遇到任何困难,可以在Coderbyte上提问,更有可能从他们真正活跃的社区获得答案。您可以匹配他们提供的官方解决方案中的答案,还可以查看其他用户的解决方案。他们还提供一些有关面试准备和计算机科学基础的课程Deloitte,PWC,HBO,LogMeIn是使用Coderbyte的一些领先公司。
其他网站:
IntervewBit(https://www.interviewbit.com/IntervewBitCodinGame)
CodinGame(https://www.codingame.com/start)
Codewars (https://www.codewars.com/)
AtCoder(https://atcoder.jp/)
Codility (https://app.codility.com/programmers/)
热门比赛:
ACM ICPC (Olympics of programming) (https://icpc.baylor.edu/)
Google Code Jam(https://codingcompetitions.withgoogle.com/codejam)
Facebook Hacker Cup(https://www.facebook.com/hackercup/)
Google Kickstart(https://codingcompetitions.withgoogle.com/kickstart)
以上是关于编程竞赛的最佳资源合集的主要内容,如果未能解决你的问题,请参考以下文章