您所在位置: 首页> 学习资讯> IT培训

IT培训 | 做编程题时的五个步骤

百知教育 IT培训 2019-09-25 03:29:04

几天前在做一道编程题时,我发现我在解题时都会遵循一个固定的模式。我又做了几道题,并写下了解题前后我脑海中的步骤。很惊讶的是我发现竟然真的有规律可循,我甚至都不知道我用了五个步骤,但有了这五个步骤,我就能更高效地解题了。

几天前在做一道编程题时,我发现我在解题时都会遵循一个固定的模式。我又做了几道题,并写下了解题前后我脑海中的步骤。很惊讶的是我发现竟然真的有规律可循,我甚至都不知道我用了五个步骤,但有了这五个步骤,我就能更高效地解题了。


正如我前面说过的,很可能你也会下意识地使用这些步骤,但如果你进行总结,并意识地使用后,就会发现惊人的区别。


1.理解并分析问题


阅读题目,开始思考题目,可能的话在纸上写下给出的条件和你需要找出的条件。


问自己几个问题:


能完全理解题目吗?


能给非专业人士解释清楚问题吗?


需要多少输入,每个输入都是什么?


每个输入带来的输出是什么?


能从题目中分解出几个模块吗?


是否拥有足够的信息?如果没有,试着再理解一遍题目。


1.png


2.仔细阅读示例输入


仔细阅读示例输入,试着想出更多的示例输入,这样能帮你更好地理解题目,而且,这样能让你想清楚你的代码需要处理多少种情况,可能的输出或输出范围是什么。


这里我建议:


选择非常简单的输入并找出输出


选择更复杂、更大的输入,看看输出是什么,需要多少种用例


然后开始处理边界条件:


不提供任何输入,输出应该是什么


提供非法输入,输出应该是什么


3.分解题目


对于大型问题来说这一步非常非常有帮助。这种情况下我建议遵循以下步骤:


试着手绘一份流程图或 UML


将问题分解成模块,或子问题


试着为每个子问题建立独立的功能


按顺序或按需要调用子问题(很可能一个函数会调用另一个函数),将它们连接起来


如果是真实世界的问题(如管理系统等),试着用类和对象来实现


编程


4.开始解题和写代码


现在题目已经分析完,可以真正编写代码了。如果不能一次性解完,那么可以先给一个简单的部分写代码,随着解决问题的深入,你会逐步发现更多细节,从而找出更多的思路。


只需要记住这三点,就一定能找到解法:


你的起点


你的位置


你的目标


而且,如果你是在面试中,不要浪费时间去解决整个题目再告诉面试官,应该不断简化问题,不断告诉面试官你解决问题的方法。


告诉面试官你从哪里入手


告诉他你在思考什么方法


找出你在问题中面临的最难的部分


有时可以忽略“最难”的部分,从简单的子问题入手,这样能给你带来更多的时间去思考前者


解决完简单的子问题后,试着用类似的方式解决困难的部分


解题时可能会想出更好的方法,要告诉面试官


5.回顾并学习


这部分是最重要的!解题完成后,一定要回顾下:代码能否改进?有没有另一种解题的方法?


总结




本文讨论了以下五个步骤:


分析并理解问题


仔细阅读示例输入和用例


将问题分解成子问题,或函数,或模块


开始解题和编程


解题完成后,回顾代码是否可以改进,是否有其他解题方法


以上,希望这篇文章可以提高你的解题技巧。 


作者 | Madhav Bahl

译者 | 弯月

责编 | 屠敏

出品 | CSDN(ID:CSDNNews)

本文为 CSDN 翻译,如需转载,请注明来源出处


上一篇:IT培训 | 70 后程序媛写给准程序媛的忠告

下一篇:应届生去公司找个Java程序员的职位需要什么技能?

相关阅读