【课程纲要】课程计划

一、集训时间安排

1、每周周一至周五下午五点二十分至六点 (四十分钟);

2、每周周六上午八点半至十一点半(三个小时);

3、周末自学时间,完成洛谷作业,刷题巩固。


二、课程内容安排

(一)、语法篇(9、10月)

1、初识计算机编程

(1)、编程和NOIP介绍

(2)、第一个程序和IDE的使用

(3)、实验课程:算术表达式

(4)、实验课:引入变量,解决数学计算问题

(5)、完成洛谷-》新手村-》第一个任务

(6)、综合课:进制转化、变量类型、标准输入输出

2、顺序结构

(1)、实验课程:poj输入输出习题

(2)、综合课:顺序结构(位数反转、交换变量、分钱游戏)

3、选择结构

(1)、逻辑运算(是非、与或非)

(2)、简单IF语句、伪代码的使用(分段价格)

(3)、实验课:闰年问题、鸡兔同笼

(4)、条件嵌套:洛谷(小玉家的电费、不高兴的津津)

(5)、综合课:三整数排序、观察变量、《入门经典》第一章习题

4、循环结构

(1)、for循环(叠加、叠乘)

(2)、break与continue语句

(3)、实验课:构造数(aabb问题、回文数)

(4)、while与do-while(格里高公式、辗转相除法)

(5)、实验课:阶乘之和

(6)、综合课:循环的代价、文件操作、《入门经典》第二章习题

5、数组、简单字符串和高精度运算

(1)、数组和循环、什么时候要用数组?(关灯问题、约瑟夫问题)

(2)、二维数组(蛇形填数、入门bzoj)

(3)、简单排序(选择排序、冒泡法、桶排)

(4)、简单字符串的输入输出、相互转化(统计单词数、统计区间数字)

(5)、高精度运算(加减乘除、乘方、取余运算)

 6、函数和应用(《一本通》)

(1)、函数的值传递、地址传递(变量交换)

(2)、递归算法(斐波那契数、汉诺塔、快速排序)

(3)、简单递推(数塔、阶梯、数格子、放苹果)

7、队列、栈和链表(《啊哈算法》)

(1)、队列和结构体

(2)、栈(回文数、打牌游戏)

(3)、链表和数组模拟链表

(二)、基础算法篇(11、12、2、3月)

1、暴力求解(《啊哈算法》)

(1)穷举法:循环(洛谷oj:三连击)

(2)全排列、排列组合(深度搜索和回溯)

(3)广度搜索优先

2、简单图论

(1)、图的表示

(2)、图的深搜、广搜

(3)、最短路径算法:四个算法

3、树

(1)、树的基础和应用

(2)、二叉树及其性质

(3)、堆、大根堆和小根堆(合并果子问题)

(4)、特殊的树:哈夫曼树、最小生成树

(5)、并查集问题

4、简单数论

(1)、再谈排列组合

(2)、二分法

(3)、素数的求解方法

(4)、欧几里德定理和拓展欧几里德定理

(5)、同余方程和费马定理

5、动态规划

(1)状态、转移方程

(2)刷题(100道题以上)

(三)、综合练习篇(6月、7月)

1、oj: 洛谷、bzoj

2、《入门经典》、《训练指南》、《挑战》

(五)、进阶提升(8、9月)

1、再谈算法

(1)、搜索和剪枝

(2)、网络流问题

(3)、字符串

2、刷题

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 序 2016年6月25日夜,帝都,天下着大雨,拖着行李箱和同学在校门口照了最后一张合照,搬离寝室打车去了提前租...
    RichardJieChen阅读 5,225评论 0 12
  • Java8张图 11、字符串不变性 12、equals()方法、hashCode()方法的区别 13、...
    Miley_MOJIE阅读 3,751评论 0 11
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,822评论 25 709
  • 不早不晚的下班时间,回到家,泡了面吃,洗了衣服。 阳台沙发,一盏烛光,音乐,和放空的心情。 晚上,《最后一公里》推...
    清楚明白阅读 249评论 0 0
  • 1.方法弃用告警 #pragma clang diagnostic push #pragma clang diag...
    VincentHK阅读 181评论 0 0