百科问答小站 logo
百科问答小站 font logo



如何面对算法竞赛的焦虑? 第1页

  

user avatar   jiang-yong-hang 网友的相关建议: 
      

先给出回答:自信是要靠一次次ac累积出来的。


给题主一个刷题建议。

大原则
哪怕是World Final的最难题算法,依然是由几种现成算法略微修改后组合出来的。
ACM并不要求你从零开始凭空构筑全新精妙算法,只要求对现有算法掌握的深度和广度。

第1步

对于每一道题,先自己想10分钟,认真拼命想(重要)。可以略微延长,但不必几个小时地想,效率太低。这又不是世纪初的三本acm队(逃)。

对于新手,这一步有点像在思路的迷宫里乱撞。没找到出口不要紧,但要记住走到了哪几个死胡同

第2步

无论有没有思路,都看题解。

对比题解和自己思路的差距,找到自己的知识漏洞思维盲区

知识漏洞:一个现成算法的复杂度、适用范围、具体写法。

思维盲区:一个特定类型问题模型应该考虑的几个思路。做题多了,看到一个题型就立刻反应出几种可能的思路,然后一个一个思路仔细分析、细化、尝试。这就好像在迷宫里的路口一个一个走走看。一个题型的解题思路是慢慢积累的,见过一次自然就知道了(能不能想起来另说,但不用原创),类似英语固定搭配。题型识别是题感,类似学外语的语感。

第一步里想到的死胡同,有的可能确实死路,那下次遇到类似题就不要花时间想这条路了;有的其实是正确出口,但因为知识漏洞或思考盲区,而误以为走到了死路。

这时,要把自己「误以为是死路,其实是正确思路」的部分,以及「从一开始就没发现的路」,还有对应的知识漏洞和思维盲区记录下来。用在线电子笔记比较好,便于随时复习。

这个有点类似错题本,但更详细和个性化,只对自己有用,没有分享给别人的价值。

ps:第一步仔细思考很重要,如果泛泛思考,等看了题解,就会忘记自己之前卡在哪儿,结果只会说「大佬就是大佬」,「我怎么就没想到」,那这题就白刷了。因为看过题解的话解法会记得一阵子,很难回到当时的状态(知识的诅咒),只好隔一阵子再来。

第3步

实际做题,确保自己的思路正确,或者确实理解了题解。

这一阶段还能检验自己对特定算法的熟练度,比如dp、dfs、bfs之类。如果打错了,这又是一个知识漏洞,记下来。




  

相关话题

  Algorithmic Game Theory 和经济学中的 Game Theory 相似度大吗? 
  大学恋爱,毕业后即将面临异地,工作和专业让我焦虑,不能和她在一个城市,能不能开导下我? 
  一个N*N的矩阵,取值为0或1,有什么好的算法判断一行或一列全为1啊? 
  算法和算法策略是一个意思吗? 
  对于任意既约分数,都可以分解成有限个不同奇数的倒数和吗? 
  数据结构与算法在工作的作用及其大学学到什么程度才算可以? 
  数字图像处理的工作是用传统算法更多还是用深度学习更多? 
  如何评价 2021 年 ICPC 银川赛区? 
  很多高效排序算法的代价是 nlogn,难道这是排序算法的极限了吗? 
  我想顺应内卷,想争做优秀的后浪,我可悲吗? 

前一个讨论
求用实例说明「大正浪漫」究竟是怎样的一种感觉?
下一个讨论
游戏王这么好玩,为什么不火?





© 2024-05-15 - tinynew.org. All Rights Reserved.
© 2024-05-15 - tinynew.org. 保留所有权利