算法/数据结构辅导班课程安排

算法注重的是解决问题的思路,数据结构注重的是数据的存储,将它们结合在一起能够解决很多实际问题,例如城市公交车的调度、红绿灯的时长等。该辅导班针对的是有 C/C++ 基础、想提高编程功底或训练编程思维的学员。
基础课程
01) 初识数据结构
介绍什么是数据结构和算法,了解基本概念和术语。
02) 线性表
线性表是一对一关系的表,按存储方式分为顺序存储和链式存储。
03) 栈和队列
作为线性表的应用,栈具有先进后出,队列具有先进先出的特性。
04) 串
字符串的特性和KMP匹配算法的原理。
05) 树和二叉树
树和森林的定义,创建和遍历以及赫夫曼树的建立。
06) 图
图的存储方式,Prim算法,Kruskal算法,Dijkstra算法,Floyd算法以及拓扑排序的原理。
07) 查找
折半查找,B+,B-树,二叉平衡树的调整以及哈希表的创建。
08) 内部排序
直接插入,冒泡,选择,希尔,快速,堆,归并及基数等不同排序方法以及这些方法的性能比价。
项目实践
01) 停车场管理系统
停车场是一个只有一个大门可供汽车进出的狭长通道。汽车在停车场内按车辆到达时间的先后顺序,依次排列。若车场内已停满车,那么后来的车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场。每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。
02) 景区导航系统
在旅游景区,经常会遇到游客打听从一个景点到另一个景点的最短路径和最短距离,这类游客不喜欢按照导游图的线路来游览,而是挑选自己感兴趣的景点游览。为于帮助这类游客信息查询,就需要计算出所有景点之间最短路径和最短距离。建立一个景区旅游信息管理系统,实现制订旅游景点导游线路策略和制订景区道路铺设策略等功能。