蓝桥杯备赛经验分享(一)
选手介绍
很荣幸能在这里和大家分享蓝桥杯的准备经验,希望可以给大家一些灵感哈~
为什么报蓝桥杯?
我原本是电信学院-电子信息工程专业的,但是上了C语言课后,我发现我对编写程序更加感兴趣。蓝桥杯正好和编程相关,我就报名了。
其次呢,我想借着蓝桥杯的机会学习算法和数据结构~
如何备赛?
1. 熟悉编程语言语法
首先嘞,要熟悉编程语言基本的语法。包括循环、判断、函数、创建数组等。
C语言的一大特点就是指针,它挺抽象的。许多同学比较害怕指针,其实蓝桥杯中可以不用它。
多coding才能熟练哈~
C/C++组可以参考《算法笔记》的编程基础篇。
2. 学习基本的数据结构和算法 + 练习
蓝桥杯中主要考察的是算法和数据结构知识。
基本的算法包括:
- 排序
- 二分
- 搜索(深度优先搜索、广度优先搜索)必考
- 动态规划
- …
基本的数据结构包括
- 数组
- 堆、栈
- 二叉树
- 图
- …
这部分内容可以结合书本和视频学习。因为目标是准备比赛,更加推荐实战性强的书,比如《算法笔记》的算法和数据结构部分。
边学边coding哈~
3. 利用在线评测系统(Online Judge)刷题
蓝桥杯是要现场写代码的(4小时,10道题),所以一定要锻炼编码能力,还有题型练习。
在线评测系统中的题目和蓝桥杯的类似,刷多了也就自然有感觉了,可以辨认出题目所需要的数据结构和算法。
推荐OJ
保持良好心态
算法和数据结构都是比较难的内容,需要花很多时间去学习。4-5小时学习一个内容是很正常的。
关于刷题:
被一道题目卡住了也是很正常的,很有可能是你没有学过需要的算法、数据结构;或者之前没有做过类似的题目,没有形成相应的套路。
很多题目都是有套路的。第一次遇到想不出来,可以去翻翻别人的博客,然后配套练几道类似的题目。
遇到问题向身边的同学请教,或者在QQ群里面讨论可以节省很多时间哦~ (自己很难发现自己写的bug)
最后,祝大家都能取得满意成绩~