科普贴:CCF-CSP认证之信息学奥赛(NOIP)学习进阶之路和编程习惯养成

     2020-10-31           浏览数:

1、火热招生:足球外围平台信息学奥赛(NOIP)集训营——只等你来,助你成功

2、科 普 贴:NOIP小白之C++学习路线图


一、常用网站

全国青少年信息学奥林匹克竞赛NOIP官网:  通知   报名  日程

洛谷官网:https://www.luogu.org    在线评测

OI博客:http://www.oier.cc

MOOC课程程序设计与算法

大牛博客源码学习:HZWER

【C++】Dev C++常用快捷键  

【C++】OJ术语: AC、WA、TLE、OLE、MLE、RE、PE、CE

【C++】常见编译错误信息中英文对照 目录 测评

【C++视频教程】基础算法、动态规划、背包、数据结构

NOIP复赛:火力全开复习备考策略20讲

NOIP复赛:历年真题满分代码和备考攻略

腾讯微云:https://www.weiyun.com/

腾讯软件:Dev-C++ 5.11.0.0 中文版下载

二、进阶之路

第1阶段,程序设计基础。主要内容:

1、 c++快速入门:程序结构,输入输出,变量,表达式,顺序,选择,循环三种结构

2、 数组和字符串:大量数据处理技术

3、 函数:结构化程序设计的主要工具

4、上机调试技巧等

其中难点主要在多重循环,递归函数等,做到自己会编出程序,看得懂别人的程序。

第2阶段,程序思想阶段。C++入门后,我们就需要狂做题,训练程序思想。简单的说,数学思想是你会做题,程序思想是你得讲清楚去让别人做题,这个区别还是很大的。这个时候很多程序设计的思想不断的被重复,争取形成条件反射。主要训练能力,多刷洛谷上的阶段题目。

第3阶段,数据结构和算法阶段。有了程序思想,做题还比较顺利后开始学习常见的通用算法和数据结构,主要内容:

1、 表、树、图的表示和基本操作

2、 递推与递归、贪心法、二分法

3、 搜索算法

4、 动态规划

第4阶段,再次狂做题巩固第三阶段的内容。基本上都是自主研究和学习,力争把这20年来全国赛,分区赛的所有题目全部做一次,背熟。

第5阶段,学习高级数据结构和算法,进一步提升。用ACM、APIO、CTSC的题目来练手,做到眼、脑、手协调。

三、算法设计思路

一个较复杂的问题,总是包括很多项功能要求,某项功能又可分解为若干个子功能,子功能还可能继续分解下去。如果不按自顶向下,逐步求精的原则设计算法,很容易造成思路上的混乱,出现这样那样的错误,甚至无法思维下去。

在设计算法时,着重从以下三步下手:

第一步:总体构思。遇到问题,首先对问题进行全局性分析、决策,找出问题包含的所有功能要求,确定数学模型,构思出程序的总体结构。

第二步:模块划分。根据分析、构思的结果,将问题所包含的功能要求,细化成各个模块,每个模块负责完成一项具体的任务。

第三步:逐步求精。如果每个模块都能够写出相应的语句或程序段去处理,那么问题即告解决;如果有一个或多个模块还不能写出具体的程序去处理,那就要进一步将它们分解成更小的模块,这一分解过程不断重复,直至所有的模块都能够写出程序为止。

掌握了这一设计方法后,思路清晰,能较快、较准确地设计出算法,并且算法结构性强,易读、易查错、易修改。

四、编程习惯的养成

 1 、养成先写算法,再编程序的良好习惯

尽管在编程序的初始阶段,不用写算法也能很快编出正确程序,但是,随着学习的深入,特别是学完选择结构、循环结构后,待解决的问题会越来越复杂,不写算法很容易思路模糊,甚至无法思考下去,因此我要求学生养成先写算法,再编程序的良好习惯。

2 、严格按照自顶向下,逐步求精的原则设计算法

典型算法很多,最基本、最常用的如:“枚举法”、“递推法”、“递归法”、“归纳法”、“回溯法”“数字模拟法”等,都应该要求熟练掌握,并能灵活运用。


网上报名入口:足球外围平台信息学奥赛(NOIP)集训营 

招生贴:足球外围平台信息学(NOIP)集训营火热招生——只等你来,助你成功

科普贴:中学生编程的好处与升学优势、双一流大学强势编程专业、就业方向与工资水平统计,家长应该如何支持孩子

科普贴:CCF~CSP认证之信息学奥赛(NOIP)学习进阶之路和编程习惯养成

科普贴:NOIP小白之C++学习路线图

科普贴:信息学奥赛考试分类介绍流程

评论贴:冷静看待华为“天才少年”的年薪百万

沁中NOIP.gif

xxfseo.com