开发者社区> 问答> 正文

ACM:参加过ACM的大牛是不是练习时都要把每个算法敲几十几百次呢?

ACM:参加过ACM的大牛是不是练习时都要把每个算法敲几十几百次呢?

展开
收起
知与谁同 2018-07-22 16:40:05 2123 0
3 条回答
写回答
取消 提交回答
  • 以大多数金牌选手的训练强度来看,比较难(麻烦)的算法例如sam、仙人掌这种奇怪的数据结构,在“学习”的步骤里面,可能已经要写几十上百次了,不过这些算法比较模板化,你只需要知道大致的原理,知道怎么用就可以了,不必要每次都敲一遍 对于新手来说,写比较简单的算法例如最小生成树这种,建议多写几遍,就可以更加了解代码原理,知道“这里为什么要这么写”。

    2019-09-07 23:28:05
    赞同 展开评论 打赏
  • 额,不至于吧,很多算法敲个一两遍就熟啦~~更多在实战的时候再练习就好啦。找不到bug,那因人而异,因问题而异,都不好说。
    2019-07-17 22:51:17
    赞同 展开评论 打赏
  • 这个时候,玄酱是不是应该说点什么...
    ACM比赛可以带纸质资料,准备一份模板是很有必要的,所以算法模版很重要,记住模版一定要权威,不要网上杂七杂八的拿来当模版,一份好的模板一定会对你的编程习惯和算法实现打下良好的基础。但是,ACM比赛的等级越高,模版的作用就越小,毕竟比赛不是套模板。

    没有人会把每个算法敲几百遍,大牛更加不会,敲十遍还记不住的话,一百遍也没用的,重要的是对算法本身的理解。如果你真正理解了算法但写不出来,那是你编程水平问题,这样应该多看看大牛的代码,多看看模板。
    大牛不是算法模板敲的多,而是对算法理解的深刻并加上做的题目多,算法就像数学公式,你记住公式难道就能考高分了吗。重要的是运用啊,一个数学高手对于新学的公式他可以随时推导出来,因为对公式真正理解啊,推的多了自然记住了,不是吗。对于新手,先不要学算法,先去poj做水题,就是简单的题目没什么算法,水题不要做太多,100题就差不多了。接下来就该系统的学习一下算法了,《算法导论》和《算法艺术与信息学竞赛》是我觉得必看的两本书。另外,历届NOI国家队选手的论文也是很有价值的,也属于必看。接下来继续去poj做题,多思考,做不出来就百度,google,poj做题的人非常多。做题可以查漏补缺,之前没碰到过的 算法都可能在题目中体现,碰到没学过的算法就百度学习,然后选一个好的放到你的算法模板库,poj做题1000以上想不成大牛都难。

    我只想说大牛基本上都是这么过来的,当然不排除个别天才,不过我没碰到过也没听过谁不做大量的题就能成为牛人的,毕竟天道酬勤。
    2019-07-17 22:51:17
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载
阿里技术参考图册-算法篇 立即下载