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

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

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值