查看原文
其他

程序员为什么非得参加一场编程竞赛?

Codersera IT服务圈儿 2022-09-11

IT服务圈儿

有温度、有态度的IT自媒体平台

作者 | 马超

对于程序员来说,没有参加过编号竞赛的人生是不完整的?

作者 | Codersera
译者 | 弯月,责编 | 郭芮出品 | CSDN(ID:CSDNnews)

以下为译文:

众所周知,编程竞赛是在比赛和活动中编写代码。参赛者必须在活动期间按照一定的规范编写程序/代码,Facebook和Google等许多跨国大公司就经常会举行编程竞赛活动。一些最受欢迎的比赛包括Google Code Jam、ICPC、Russian AI Cup和CodeChef。

编程竞赛属于一项运动,只不过是精神层面的运动。这项运动考验的是你的竞赛精神和特定的能力。

01

发展史


最古老的编程竞赛当属ACM-ICPC(国际大学生编程竞赛)。该比赛于1970年由Upsilon Pi Epsilon计算机科学荣誉学会的Alpha分会在美国德克萨斯州农工大学举行,使用的编程语言是FORTRAN。编程竞赛是面向程序员的良好游戏平台,编程竞赛还可以帮助你在自由职业者网站上的项目中获得更好的竞标价和成交价。在本文中,我们将介绍编程竞赛的指南,希望能够帮助你充分利用编程竞赛做出更英明的决策。

02

编程语言


我建议你学习C、C ++或Java。如果你觉得C容易理解,那么就学习C。我建议你学习C++是因为它拥有一套标准的模板库,其中包含矢量和集合之类的功能,在解决特定问题时很方便。Java也是一个不错的选择,因为一些顶级编程人员都在使用Java,并且Java的命令也容易理解。编程竞赛的第一步就是选择编程语言。那么接下来呢?

03

申请编程竞赛


首先,请访问HackerRank网站(https://www.hackerrank.com/)。这个网站有一些很简单的练习题,尤其适合初学者。此外,该网站的用户界面也很方便。该网站的测试混合了简单和中等难度的问题。如果你的编程竞赛经验为零,那么通常可以从一些简单的问题着手。在做完所有简单级别的问题后,也可以尝试少量中等难度的问题。此外,这时就会有HackerRank编程竞赛的的主管给你打电话。然后,就可以申请CodeChef和Codeforce了。CodeChef(http://codechef.com/)的竞赛用时较长,有助于程序员提高深刻的思维能力。Codeforces(http://codeforces.com/)两小时一场的竞赛很受欢迎。如果你想提高思考速度和编程速度,那么建议你参加这些比赛。简而言之,通过这两个网站的竞赛可以帮助你成长为一名优秀的程序员。你感觉如何?这些竞赛可以提高你的深入思考能力和编程速度。当然,如果你对这些网站感兴趣也完全可以,因为这有助于你成长为更好的的程序员。

04

编程竞赛的最佳实践


  • 学习更好的新算法,并在需要时实现。

  • 使用函数并尽量减少代码重复。

  • 维护好为标准算法、必要的头部、函数等预编写的模板。

  • 了解数据结构。

  • 选择最适合的编程语言。

05

编程竞赛的好处


编程竞赛助于提高分析和逻辑技能。此外,还可以学习算法知识,为你的简历增添色彩。而且在参与编程竞赛的过程中,你可以遇到一群志同道合的朋友。此外,编程竞赛还有科技巨头的支持。

06

编程竞赛的真相


  • 在编程竞赛中,编程人员利用算法和数据结构解决编程问题。

  • 编程竞赛所需的技术力包括基本的数学知识、算法、编程以及敲代码的速度。

  • 参加编程竞赛永不为晚,这项竞赛没有年龄限制。

  • 参加编程竞赛的程序员可以成长为编程大师,但缺乏框架知识。而框架对于现实生活中的项目很重要。

07

写在最后的话


另外,你也可以申请TopCoder,吸取谷歌和其他技术巨头的建议也是不错的。所以说,积极地参加竞赛,努力提高自己的技术力,积累自己的实力。另外,你也可以一边参加编程竞赛,一边学习实用的技术。出色的编程竞赛经验,外加必要的实践技术力,可以帮助你拿下梦寐以求的工作机会。原文:https://codersera.com/blog/competitive-programming-algorithm-skills/本文为 CSDN 翻译,转载请注明来源出处。


*版权声明:转载文章和图片均来自公开网络,版权归作者本人所有,推送文章除非无法确认,我们都会注明作者和来源。如果出处有误或侵犯到原作者权益,请与我们联系删除或授权事宜。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存