第1个回答 推荐于2017-11-24
迅速上手ACM 算是好高骛远。。
我的观点:
第一阶段:先刷水题,水题,就是几乎不牵扯算法。需要自己想方法解决。
这样的题,一是锻炼 逻辑思维和思维的严谨,二是锻炼代码能力(写的代码越来越长而错误越来越少,看别人很长的代码很快就能看明白对方的思路,这些都是代码能力)
代码能力不够直接学习算法 会非常吃力了。。
在各大OJ刷200道水题,这样算是入门了吧。。:(推荐去HDOJ因为这上面的水题比较多,适合新手入门,第11页,第16很多中文水题)。越到实在是做不出来的题就放放。。
第二阶段:渐渐的学一些简单的算法。。
HDOJ的论坛上有的课件,水题刷的差不多了,看着课件(课件有些得放写的不是很详细,可以去百度 这方面的资料),学一些基础算法,继续刷题。。。。。
第二阶段刷到400.。
第三阶段: 在第二阶段的基础上继续纠结算法。 这时候可以看算法导论了。学习数据结构。继续刷题。。
刷到600.。
算法导论看完之后楼主可以去看看 刘汝佳的黑书(算法艺术与信息学竞赛)。
如果楼主能坚持到这时候,那算是一个牛了。。
之后楼主应该就知道该怎么走了。。
个人观点,偶也是菜鸟,这是聆听老师和大牛们的教诲总结出来的。呵呵。。
希望楼主不要觉得这各流程 很难做到。。
ACM这条路很不好走,希望楼主能坚持下来。一起加油……本回答被提问者采纳
第2个回答 2016-04-26
学习ACM入门的方法:
第一阶段:先刷水题,水题,就是几乎不牵扯算法。需要自己想方法解决。这样的题,一是锻炼逻辑思维和思维的严谨,二是锻炼代码能力。一般做到200题左右。
第二阶段:渐渐的学一些简单的算法。第二阶段刷到400题。
第三阶段: 在第二阶段的基础上继续纠结算法。 这时候可以看算法导论了。学习数据结构。继续刷题。刷到600左右。
ACM国际大学生程序设计竞赛(英文全称:ACM International Collegiate Programming Contest(ACM-ICPC或ICPC)是由美国计算机协会(ACM)主办的,一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。经过近30多年的发展,ACM国际大学生程序设计竞赛已经发展成为最具影响力的大学生计算机竞赛。赛事目前由IBM公司赞助。
第3个回答 2011-02-14
同一楼,一些模拟运算的,什么大数加减乘除之类的。
然后数据结构。链表,队列,堆栈,图
然后简单算法。动态规划,贪心,最短路径啊之类
以前没有好好学,现在没的后悔,加油。。。。
算法导论强烈推荐,并不是很难,不要被厚度吓到了