首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >加速编码时间的通用编程技术

加速编码时间的通用编程技术
EN

Software Engineering用户
提问于 2012-06-21 21:04:16
回答 9查看 7.7K关注 0票数 21

我正在为一个编程竞赛做准备,我们必须用C++编写代码,这一切都是为了在短时间内生成工作代码。例如,使用宏获得至少两个int或使用memset初始化数组(但我被告知不应该使用这两种这里)。

这就引出了这样一个问题:在一个真正的工作中存在什么样的编码技术?

EN

回答 9

Software Engineering用户

回答已采纳

发布于 2012-06-21 22:10:57

快速生成工作代码的方法是.慢点。采取非常小的步骤。确保你知道每一步都是为了什么。确保在每一步之后您的代码编译和运行。

最重要的是,使用测试驱动的开发。写一个不及格的测试。编写足够的代码使测试通过。重构以使代码整洁,确保它仍然通过所有测试。重复一遍。

如果不这样做,那么编写一堆代码是非常容易的,这是不起作用的。然后,你要花很长的时间才能弄清楚为什么它不起作用。

票数 53
EN

Software Engineering用户

发布于 2012-06-21 21:41:33

深入回顾标准库,特别是STL算法。这将为您节省许多代码行和大量时间。赢得编程比赛的关键是在尽可能高的水平上编程。在C++中,没有外部库,这意味着STL调用而不是for循环。

票数 30
EN

Software Engineering用户

发布于 2012-06-22 03:30:47

我经常参加ACM比赛,希望这些建议能帮助你:

  • 正如其他人说的那样,熟悉语言,尤其是STL,它具有您想要使用的通用函数(binary_search、min、max)和健壮的数据结构来节省您的时间(堆栈以避免直接递归,队列用于BFS,甚至priority_queue用于Dijkstra (如果您喜欢的话))。
  • 确定问题的类别,如果是数学、动态规划、图论等等。问问自己:你对这类问题有多熟悉?在这样做之后,您应该就解决这些问题的顺序做出决定,这与下一个问题密切相关.
  • 你想在打字前完全理解这个问题,解决正确的问题,在我的第一次比赛中,我认为如果我不打字,我就是在浪费时间;后来我发现这是个错误。
  • 不要认为评论是浪费时间,至少在“聪明”的代码中,你不想逐行调试错误(这是对时间的真正浪费),重视清晰。
  • 玩得开心。
票数 24
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/153791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档