未来最有竞争力的编程语言

Competitive programming is changing the industry hiring process drastically. Many Big Companies like Google, Facebook prefer hiring through vigorous competition for programmers to grab a job. Google hosts Code Jam for hiring top programmers across the globe. Facebook also conducts its Hacker Cup contest for its hiring process.

竞争性编程正在极大地改变行业的招聘流程。 像Google,Facebook这样的许多大公司都喜欢通过激烈的竞争来招聘程序员,以谋取一份工作。 Google托管Code Jam,以雇用全球各地的顶级程序员。 Facebook还为其招聘过程举办了“黑客杯”竞赛。

I have been participating in various competitive programming contest and winning most of them have been an easy job for me. Many people think that coding for more than 5 years is the key to win various competitive programming. But let me clear this myth for you, I had just 4 months of coding experience before winning my first competitive programming contest.

我一直参加各种竞争性编程竞赛,而赢得大多数竞赛对我来说是一件容易的事。 许多人认为,超过5年的编码是赢得各种竞争性编程的关键。 但是,请允许我为您澄清这个神话:在赢得首个竞争性编程竞赛之前,我只有4个月的编码经验。

1.学习任何编程语言。 (1. Learn Any Programming Language.)

The rules of all top competition programming contest allow a user to use any programming language of his/her choice. So, let's use this rule for our advantage. If you are willing to learn Python for competitive programming, learn Python.

所有顶级比赛编程竞赛的规则都允许用户使用他/她选择的任何编程语言。 因此,让我们将此规则用于我们的优势。 如果您愿意学习Python进行竞争性编程,请学习Python。

Personally, I started learning C++ to begin my journey of coding. I also, suggest most of the readers start with C++ if you have a technical background and have a slight idea of how to code. If you belong from a non-technical background who have no prior experience of coding should start with Python. As Python is very easy to learn and it is just like writing an easy with fixed rules and syntax.

我个人开始学习C ++,开始我的编码之旅。 我还建议,如果您具有技术背景并且对如何编写代码有一点了解,建议大多数读者从C ++开始。 如果您来自非技术背景,但没有编码经验,那么应该从Python开始。 由于Python非常易于学习,就像编写具有固定规则和语法的简单脚本一样。

I also suggest most of my readers learn language from verified sources and prefer not buying any expensive course only to learn the basics of programming. Trust me, coding becomes very easy if you learn the basics without any stress or fear of coding. To start with your journey I would suggest you learn from the below YouTube video and invest your 6 hours to learn Python.

我还建议我的大多数读者从经过验证的资源中学习语言,并且宁愿不要只为了学习编程的基础而购买任何昂贵的课程。 相信我,如果您学习基础知识而无需任何压力或担心编码,那么编码将变得非常容易。 首先,建议您从下面的YouTube视频中学习,并花6个小时来学习Python。

演示地址

2.学习数据结构和算法。(2. Learn Data Structure and Algorithms.)

When you get familiar with writing small programs with your preferred programming language, new and powerful methods are required to create and solve various programming problems. So, most of the competitive programmers focus on mastering the concept of data structure and algorithm to implement it while writing code for some tricky problem.

当您熟悉使用首选的编程语言编写小型程序时,就需要使用新的功能强大的方法来创建和解决各种编程问题。 因此,大多数有竞争力的程序员专注于掌握数据结构和算法的概念,以在编写一些棘手问题的代码时实现它。

So, learning data structure and algorithm is a must for every competitive programmer. Mastering all concepts of data structure require a minimum time of 3 months. Also, learning data structure and algorithm will help you to crack various technical interviews if you are willing to apply for a junior software developer job.

因此,学习数据结构和算法对于每个有竞争力的程序员都是必须的。 掌握所有数据结构概念至少需要3个月的时间。 此外,如果您愿意申请初级软件开发人员的工作,学习数据结构和算法将帮助您攻克各种技术面试。

Here comes the tricky part, data structure and algorithms are very important in your journey of winning competitive programming. Therefore, depending upon a YouTube video or a single website won’t help most people. I would suggest you buy a course from Udemy or Coursera. Completing this course can also get you a verified certificate, which will help you to apply for various technical jobs. Most of the courses on Coursera are from top universities. So, it is good to invest a small sum of money into it.

棘手的部分到了,数据结构和算法在赢得竞争性编程的过程中非常重要。 因此,依靠YouTube视频或单个网站对大多数人没有帮助。 我建议您从UdemyCoursera购买一门课程。 完成本课程还可以获得认证证书,这将帮助您申请各种技术工作。 Coursera上的大多数课程都来自顶尖大学。 因此,向其中投入少量资金是很好的。

3.练习新问题。 (3. Practice new problems.)

Now when you have learned a programming language and you have knowledge about data structure and algorithm, start applying it to various problems available online. Solving a minimum of 10 problems per day will help you to build your problem-solving skill, which is most important while participating in programming contests.

现在,当您学习了一种编程语言并且对数据结构和算法有了了解之后,就可以将其应用于各种在线可用的问题。 每天至少解决10个问题,这将帮助您建立解决问题的技能,这对于参加编程竞赛非常重要。

Try reading the complete problem and creating a Python program or C++ program which can solve the problem inefficient way. If you get stuck with a problem, don’t hesitate to see the solution to that problem in your preferred language. When you see the solution try to figure out the logic behind it, you can also come up with your own solution after understanding the logic behind it.

尝试阅读完整的问题并创建可以解决问题的低效率方式的Python程序或C ++程序。 如果您遇到问题,请以您喜欢的语言查看该问题的解决方案。 当您看到解决方案尝试找出其背后的逻辑时,您也可以在了解其背后的逻辑之后提出自己的解决方案。

I would suggest you create a free account on different problem-solving websites like Hacker Rank. Personally, I started solving problems on hacker rank to expand my problem-solving skills. Just select your preferred language on your homepage and hacker rank will display the problems. They also have an inbuilt editor, after you type your solution for a particular problem then hit submit to see whether the solution is correct or not. They also don’t run any advertisements on their websites, which can be irritating for some programmers.

我建议您在其他解决问题的网站(例如Hacker Rank)上创建一个免费帐户。 我个人开始解决黑客级别的问题,以扩展我的问题解决能力。 只要在首页上选择您喜欢的语言,黑客等级就会显示出问题所在。 他们还具有内置的编辑器,在您为特定问题键入解决方案之后,请单击提交以查看解决方案是否正确。 他们也没有在他们的网站上刊登任何广告,这可能会刺激某些程序员。

4.参加 (4. Participate)

Mostly, all competitive programming contest don’t charge you to participate. Once you are done with all the training, I would suggest you participate in various contents running online. Winning or losing will not matter at the beginning of your journey, but gaining experience will matter. So, don’t just aim to participate, try to see what your drawbacks are and practice to improve your drawbacks.

通常,所有竞争性编程比赛都不会向您收费。 一旦完成所有培训,我建议您参加在线运行的各种内容。 胜利或失败对您一开始的旅程并不重要,但是获得经验很重要。 因此,不仅要参与其中,还应尝试看看自己的缺点是什么,并练习改善缺点。

When I participated in my first contest, I was ranked 10,000 globally. I figured out that my typing speed is not as good as other players in that contest. So, I practiced touch typing for a few weeks to increase my typing speed and guess what, after that, I always finished in the top 100 positions. Some programming contest has a higher importance, while some have very less. Let’s see the top contest you should participate right now.

当我参加第一场比赛时,我在全球排名10,000。 我发现我的打字速度不如那场比赛的其他选手快。 因此,我练习了触摸打字几个星期,以提高打字速度,然后猜测,之后,我总是排在前100位。 有些编程竞赛的重要性更高,而有些则没有那么重要。 让我们看看您现在应该参加的最高比赛。

Google Code Jam:- This contest is hosted by Google itself and winning this contest will surely give you a job at Google. This contest can also be said the dream competition for all the programmers across the globe. This contest is held only once a year. It has many elimination rounds and winning this contest should be the ultimate goal of your life.

Google Code Jam :-该竞赛由Google本身主办,赢得此竞赛肯定会给您在Google的一份工作。 这项竞赛也可以说是全球所有程序员的梦想竞赛。 该竞赛每年仅举行一次。 它有很多淘汰赛,赢得这场比赛应该是您一生的最终目标。

Facebook Hacker Cup:- Same, like Google Facebook also hosts a coding contest. But, the job is not the prize for the winner. The winner gets the cash prize of $20,000. In some cases, if the host judges are impressed than you may land a job at Facebook. But, winning this contest should also be the goal of your life. This contest is also held for just once a year

Facebook黑客杯:-同样,例如Google Facebook也举办编码竞赛。 但是,这份工作并不是获胜者的奖励。 获奖者将获得20,000美元的现金奖励。 在某些情况下,如果主持人法官印象深刻,那么您可能会在Facebook找到工作。 但是,赢得这场比赛也应该是您生活的目标。 该比赛也每年举行一次

Google Kick start:- Unlike, other competitions which has elimination rounds this contest focus on giving a college student a complete experience of competitive programming. It has various rounds named as A, B, C etc. You can participate in any of the rounds or all the rounds if you are willing to. Usually, winning this contest won’t give you any prize. It is held for 6 months straight. I would suggest you participate in it.

Google Kick开始:-与其他比赛不同的是,其他比赛都被淘汰了,这场比赛的重点是为大学生提供完整的竞争性编程经验。 它有各种回合,分别命名为A,B,C等。如果愿意,您可以参加任何回合或所有回合。 通常,赢得比赛不会给您任何奖励。 连续举行六个月。 我建议您参加。

They are many websites like Code Forces, Code Chef and Leet Code which hosts contests weekly and you should try participating in them to gain the feeling of the competitive environment. Winning on this platform won’t give you any prize. It suggests rates coders accordingly and gives them a rank globally.

他们有很多网站,例如Code ForcesCode ChefLeet Code,它们每周举办比赛,您应该尝试参加比赛以获得对竞争环境的感觉。 在这个平台上赢钱不会给您任何奖励。 它建议对编码人员进行相应的评分,并为他们提供全球排名。

Practice programming as much as you can. Also, don’t get afraid of coding. Coding is just a language to communicate with computers in a proper manner. Best of luck in your competitive programming journey.

尽可能多地练习编程。 另外,不要害怕编码。 编码只是一种以适当方式与计算机通信的语言。 祝您在竞争激烈的编程旅途中一切顺利。

翻译自: https://medium.com/dev-genius/how-to-start-competitive-programming-in-september-2020-3fc42b315597

未来最有竞争力的编程语言


http://www.taodudu.cc/news/show-3263475.html

相关文章:

  • vue nodejs 构建_如何使用nodejs后端打字稿版本开发和构建vue js应用
  • AC自动机及KMP练习
  • 计算机英语口语练习,计算机英语会话(MP3+中英字幕) 第22期:办公自动化(1)
  • PAT练习笔记——4.2 散列
  • 手动输入计算机在线,2001计算机英文录入反复练习
  • 电脑打字前面的那条线叫什么_我29岁那年就学会了打字。这值得吗?
  • 使用c#制作打字游戏_使用打字稿iii绘制网格构建游戏4 5
  • VScode 主题和打字特效配置,让你的VScode活“”起来
  • 打字软件带倒计时_使用VueJS创建打字速度效果-第2部分:计时器和计分板
  • 什么软件可以听力打字测试,雅思听力1 - 在线打字测试(dazi.kukuw.com)
  • 机器学习 伪标签_伪英语—机器学习打字练习
  • Mysql 8.0修改密码
  • openstack修改密码
  • sourceTree 更改密码
  • 使用saltstack批量修改密码
  • linux root密码修改失败,【转】Linux root修改密码失败
  • linux修改密码策略
  • 让word文档中的代码更美观
  • word中如何美观插入代码?
  • c#窗体美观原则
  • 如何做出美观高大上的前端页面
  • 一个简单而又美观的 beamer 模板制作
  • PyQt如何使界面按钮更加美观
  • 写出一个美观的表单页
  • qt如何设计界面更美观_8个更好的界面设计的黄金法则
  • 如何让你的网页看起来更美观
  • 在word中如何美观地插入代码
  • 【oh-my-zsh】打造强大又美观的linux终端
  • 巧用Vscode编辑器,快速格式化代码,让你的代码变得整洁又美观
  • 使用Qt绘制一个简约美观的界面 【使用QSS简单美化】(笔记)

未来最有竞争力的编程语言_如何在2020年9月开始竞争性编程相关推荐

  1. 找出最具竞争力的子序列_力扣300——最长上升子序列

    这道题主要涉及动态规划,优化时可以考虑贪心算法和二分查找. 原题 给定一个无序的整数数组,找到其中最长上升子序列的长度. 示例: 输入: [10,9,2,5,3,7,101,18]输出: 4 解释: ...

  2. 找出最具竞争力的子序列_每日算法系列【LeetCode 376】摆动序列

    题目描述 如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为摆动序列.第一个差(如果存在的话)可能是正数或负数.少于两个元素的序列也是摆动序列. 例如, [1,7,4,9,2,5] 是一个 ...

  3. vim切换编程语言_把 Vim 打造成源代码编辑器 - C 语言编程透视

    前言 程序开发过程中,源代码的编辑主要是为了实现算法,结果则是一些可阅读的.便于检错的.可移植的文本文件.如何产生一份良好的源代码,这不仅需要一些良好的编辑工具,还需要开发人员养成良好的编程修养. L ...

  4. mapreduce编程初级实践_涨姿势!2020最好的 10 大国外编程学习网站

    码个蛋(codeegg) 第 1043 次推文 作者:John Selawsky 链接:https://sourl.cn/cWw63v 前言 在这篇文章中,我收集了 10 个最佳的编程学习网站,掌握编 ...

  5. 《成为一名机器学习工程师》_如何在2020年成为机器学习工程师

    <成为一名机器学习工程师> 机器学习工程 (Machine Learning Engineering) The title of "Machine Learning Engine ...

  6. 国外域名注册商选择_如何在2020年选择最佳域名注册商(比较)

    国外域名注册商选择 Are you looking for the best domain registrars of 2020? Domain registrars are the companie ...

  7. 如何留住关键人才_如何在2020年及以后吸引和留住顶尖技术人才

    如何留住关键人才 I care about the future of work because I have always been fascinated with how people earn ...

  8. 联想e480笔记本如何拆屏幕_如何评价 2020 年 10 月 20 日联想发布的小新 Pro14 笔记本?有哪些亮点和槽点?...

    在聊小新Pro14之前,想先谈谈联想本次发布会的核心亮点. 很显然,本次发布会笔记本产品最大的亮点,是Intel全新的11代酷睿系列处理器.NVIDIA最新一代GeForce MX450移动显卡在联想 ...

  9. 10的预览模式_谷歌相机2020年3月更新汇总,适配米10等五摄手机,30s手动曝光

    大家好,三月份谷歌相机mod版更新了众多版本,本次更新我给大家带来了每位国外modder的最新版本,希望大家能找到适合自己的版本. 本次更新亮点如下: 1.增加对五摄手机的支持,如小米10和小米10P ...

最新文章

  1. TOP语句与Order By语句
  2. vim的基本快捷操作(二)——可视模式
  3. 数据库开发——MySQL——索引原理
  4. Java 基于 UDP 实现 Socket中的多客户端通信
  5. SpringBoot2.0实现静态资源版本控制
  6. 解决maven项目Cannot change version of project facet Dynamic web module to 3.0
  7. cocos creator基础-(十三)cc.Loader使用
  8. What is the difference between LINQ to SQL and LINQ to Entities?
  9. 解读MySQL性能调优“金字塔”
  10. PHP学习笔记--函数
  11. html java 安卓_用Html进行Android开发-Fun言
  12. 计算机毕业设计django基于python智能在线考试阅卷系统(源码+系统+mysql数据库+Lw文档)
  13. 汉字应用能力计算机上打印文字,宣传|《汉字应用水平等级及测试大纲》,你能考几级?...
  14. 参考文献类型标识码--中英文对照
  15. Android利用shape画虚线
  16. mysql多表关联查询慢_mysql数据库多表关联查询的慢SQL优化
  17. 关于 fir.im 你可能不知道的实用小工具
  18. [源码分析] 从FlatMap用法到Flink的内部实现
  19. 数据结构与算法2:线性表的顺序存储与链式存储
  20. 大家一起学习用VBA查询数据

热门文章

  1. 网络常用英语术语精选
  2. 内存屏障与java的内存屏障 —— JVM篇
  3. Go日志-Uber开源库zap使用
  4. 树莓派使用4g上网卡上网
  5. 杨思祺 大数据和人工智能
  6. Python socket 获取本机IP地址
  7. [BSidesCF 2020]Had a bad day 1
  8. 显卡光线追踪是什么?怎么判断性能高低?
  9. 微信开发 invalid openid
  10. RK3399平台开发系列讲解(内存篇)15.26、Linux内存是怎么工作的?