课程编号:
课程性质:
公共选修
课程名称:
算法竞赛(程序设计竞赛)
学时/学分:
64/3
英文名称:
ProgrammingContest
考核方式:
考试
选用教材:
《算法竞赛入门到进阶经典》罗勇*清华大学出版社
大纲执笔人:
先修课程:
c语言,c++语言
大纲审核人:
适用专业:
一、教学基本目标“算法竞赛(程序设计竞赛)”是一门公共选修课。通过该课程的学习,使学生通过编程竞赛的方式,深入学习c语言、c++语言、数据结构、算法设计等内容,并提高实际编程能力。本课程能激发学生学习算法和程序设计的兴趣,提升算法设计、逻辑推理、数学建模、编程实现和英语阅读能力,激励学生运用计算机编程技术和技能解决实际问题,培养团队合作意识、挑战精神和创新潜力。
二、课程涉及知识技能本课把C/C++语言、算法和解题有机地结合在了一起,注重学习方法和实践技巧。课程内容包括:算法竞赛入门、算法复杂度与算法思想、数据结构、暴力求解和搜索技术、动态规划、数学概念与方法、字符串处理、图论模型与算法、几何题与模板,覆盖了算法竞赛入门所需的主要知识点。
三、相关能力培养(1)编码能力。编写大量代码,奠定杰出程序员的基本功。
(2)算法知识。掌握数据结构、搜索技术、动态规划、数学、字符串、图论、几何等算法知识。
(3)计算思维和逻辑思维。
(4)团队合作精神。
四、教学基本内容章
教学内容
1
概述
第1节算法竞赛与创新能力
第2节算法竞赛入门知识
2
算法复杂度
第1节计算的资源
第2节算法的定义
第3节算法的评估
3
STL和基本数据结构
第1节容器:vector、栈和stack、队列和queue、优先队列和priority_queue、链表和list、set、map
第2节sort
第3节next_permutation
4
搜索技术
第1节递归和排列
第2节子集生成和组合问题
第3节BFS:BFS和队列、状态图搜索、A*算法、双向广搜
第4节DFS:DFS和递归、回溯与剪枝、迭代加深搜索、IDA*
5
高级数据结构
第1节并查集
第2节二叉树
第3节线段树
第4节树状数组
6
基础算法思想
第1节贪心法
第2节分治法
7
动态规划
第1节基础DP
第2节递推与记忆化搜索
第3节区间DP
第4节树形DP
第5节数位DP
第6节状态压缩DP
8
数学
第1节高精度计算
第2节数论
第3节组合数学
第4节概率和数学期望
第5节公平组合游戏
9
字符串
第1节字符串基本操作
第2节字符串哈希
第3节字典树
第4节KMP
第5节AC自动机
第6节后缀树和后缀数组
10
图论
第1节图的基本概念
第2节图的存储
第3节图的遍历和连通性
第4节拓扑排序
第5节欧拉路
第6节无向图的连通性
第7节有向图的连通性
第8节2-SAT问题
第9节最短路
第10节最小生成树
第11节最大流
第12节最小割
第13节最小费用最大流
第14节二分图匹配
11
计算几何
第1节二维几何基础
第2节圆
第3节三维几何
五、建议教学进度章
学时
1
4课时
2
2课时
3
2课时
4
6课时
5
8课时
6
4课时
7
8课时
8
8课时
9
6课时
10
10课时
11
6课时
六、教学方法理论教学和课堂活动结合。
主要采用多媒体技术进行课堂教学。
七、考核方式考勤,作业,考试。
八、成绩评定方法采取百分制。(1)平时成绩30分;(2)机试30分;(3)笔试40分。
九、教学用书提供PPT课件,教学大纲,源码,分钟视频讲解
`作者:罗勇*、郭卫斌
`定价:59.80元
`ISBN:6
本书是算法竞赛的入门和进阶教材,包括算法思路、模板代码、知识体系、赛事相关等内容。本书把竞赛常用的知识点和竞赛题结合起来,讲解清晰、透彻,帮助初学者建立自信心,快速从实际问题入手,模仿经典代码解决问题,进入中级学习阶段。全书分为12章,覆盖了目前算法竞赛中的主要内容,包括算法竞赛概述、算法复杂度、STL和基本数据结构、搜索技术、高级数据结构、基础算法思想、动态规划、数学、字符串、图论、计算几何。本书适合用于高等院校开展的ICPC、CCPC等算法竞赛培训,中学NOI信息学竞赛培训,以及需要学习算法、提高计算思维的计算机工作者。
在书圈后台回复,下载本书配套的教学资源
大礼包:凡是在京东购书并评价的(必须有评价),请将截图发到邮箱:itbook8
.