Acm集训营培训心得
参加暑期acm训练营的培训,让我收获了好多,感想也特别特别多,也学会了许多。
所以特别感谢集训营中为我们上课的老师对我们做的培训。
经过特训营的培训,我了解到了许多关于acm的一系列知识。
我感触特别深。
作为ACM的新手,有兴趣而经验不足,然而有些热心的学者与老师多是向新手推荐书籍,如刘汝佳的算法竞赛入门经典,算法艺术与信息学竞赛及算法导论。
不知这些是否是有针对ACM的系统教材,始终在这偌大的书籍中感到彷徨。
但我觉得一方面它们倾向于理论证明、缺乏实战性,当时总是希望有位知识渊博的学者能带着我走。
可这一切只是天方夜谭,更多的只能希冀在自己的身上。
暑假集训从早上9点到下午5点,中间吃饭睡觉花掉3个小时左右,一天有6个小时上课时间,也许这段时间的确不是很长,每上五天课便会放假一天。
看似好轻松,然而过于集中精力死盯这电脑屏幕,久而久之会有突如其来的疲倦。
如果您想要从一个新手改造成一个合格的队员,你所感到的便是你的疯狂。
引入ACM的历史,然后便是三道都是A+B,而且有样例程序培训,开始的第一节莫过于热身。
这不仅能带给我们激情和勇气,同时看似基础性的东西却往往是胜败的关键点,使得我们不可松懈。
接着便是从最简单的算法开始介绍,依次是:线性表,栈,队列,枚举法,递推法,递归法,分治法,树,搜索,图论的相关知识,并查集,动态规划,大数问题,字符串问
题。
线性表,栈,队列:都有顺序结构和链式结构;栈和队列是在程序设计中被广泛使用的两种线性数据结构,它们的特点在于基本操作的特殊性,栈必须按"后进先出"的规则进行操作,而队列必须按"先进先出"的规则进行操作。
和线性表相比,它们的插入和删除操作受更多的约束和限定,故又称为限定性的线性表结构。
而这三者都是来自数据结构的知识,数据结构数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。
数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础。
同时这门课程也是非常难学,需要我们花费更多的功夫。
对于ACM的竞赛,更多的是注重于你对题目的灵活运用,采取比较简便的方法,所以便引入了枚举法,递推法,递归法,分治法,动态规划等技巧性较强的专门课程。
复杂的ACM竞赛题往往蕴藏着精深的数学道理,需要的是数学知识的结合,学以灵活变通。
就是这样才让人感觉到它是种让人从粗浅走向智慧,从蒙昧走向文明,从低级走向高级,从不完善走向完善的艰难历程。
除了对这些学术上的专业注重,然而也需要学习英语知识,大多数的竞赛题目是英文,为了更加趋于国际化,英语也成为国际的交流语言,所以学习英语义不容辞,不可推卸。
通过以上报告间隙,我结合自身学习实际,进行了客观的对比与反思。
在今后的学生涯中,我要查漏补缺,通过学习来完善自身专业素养,努力为自己的梦想实践。