《数据结构》课程教学大纲
一、课程的地位与作用
《数据结构》课程是计算机专业的核心课程之一,是一门综合性的专业基础课,它介于数学,计算机硬件,计算机软件之间。是高级程序设计语言,编译原理,操作系统,数据库,人工智能等课程的基础。同时,数据结构的技术也广泛应用于信息科学、系统工程,应用数学,以及各种工程技术领域。
| |||||||||||
二、课程的教学目标与基本要求
课程目的是使学生了解计算机应用中数据对象的特性,学会在应用中, 根据现实世界中的问题选择适当的数据逻辑结构和存储结构以及相应算法, 并且培养基本的、良好的程序设计技能。
三、课程内容
1 绪论1. 1 数据结构的有关概念1. 2 数据结构发展概况1. 3 关于算法及算法的分析1. 1. 1 算法
1. 1. 2 算法设计要求
1. 1. 3 时间复杂度
2 线性表2. 1 线性表的逻辑结构2. 2 线性表的顺序存储结构及运算实现2. 3 线性表的链式存储结构及运算 2. 3. 1 线性链表
2. 3. 2 循环链表
2. 3. 3 双向链表
2. 3. 4 静态链表
2. 4 一元多项式的表示及相加3 栈和队列3. 1 栈的定义及运算3. 2 栈的存储结构及运算实现3. 3 栈应用举例3. 4 队的定义及运算3. 5 队的存储结构及运算实现 3. 5. 1 队的链式存储和运算
3. 5. 2 循环队---队的顺序存储和运算
4 数组4. 1 数组的定义4. 2 稀疏矩阵的三元组表示及有关算法4. 3 稀疏矩阵的十字链表表示及相加5 树和二叉树5. 1 树的定义及有关术语5. 2 二叉树 5. 2. 1 二叉树的定义
5. 2. 2 二叉树的性质
5. 2. 3 二叉树的存储结构
5. 3 二叉树的遍历算法及线索二叉树 5. 3. 1 二叉树的遍历
5. 3. 2 线索二叉树
5. 4 树和森林 5. 4. 1 树的存储结构
5. 4. 2 森林与二叉树的转换
5. 4. 3 树和森林的遍历
5. 5 哈夫曼树及其应用 5. 5. 1 哈夫曼树
5. 5. 2 哈夫曼编码
6 图6. 1 图的定义及逻辑结构、存储方法6. 2 图的遍历算法 6. 2. 1 图的深度优先搜索
6. 2. 2 图的广度优先搜索
6. 3 无向图的连通性 6. 3. 1 无向图的连通分量
6. 3. 2 无向图的生成树
6. 3. 3 最小生成树
6. 4 有向无环图及其应用 6. 4. 1 拓扑排序;
6. 4. 2 关键路径
6. 5 单源点最短路径7 查找7. 1 静态查找表 7. 1. 1 顺序表的查找
7. 1. 2 有序表的折半查找
7. 1. 3 索引顺序表的查找
7. 2 动态查找表 7. 2. 1 二叉排序树
7. 2. 2 平衡二叉树
7. 2. 3 B-树和B+树
7. 3 哈希表 7. 3. 1 哈希表的定义
7. 3. 2 哈希函数
7. 3. 3 冲突处理方法
7. 3. 4 哈希表的查找
8 内部排序8. 1 排序的概念8. 2 插入排序 8. 2. 1 直接插入排序
8. 2. 2 插入排序
8. 2. 3 希尔排序
8. 3 快速排序8. 4 选择排序 8. 3. 1 简单选择排序
8. 3. 2 堆排序
8. 5 归并排序8. 6 各种内部排序方法的比较 | |||||||||||
四、时间分配 | |||||||||||
课程分
段标识 |
序号 |
教 学 内 容 |
教学环节(学时) | ||||||||
讲
课 |
习
题 |
实
验 |
上
机 |
课
外 |
小
计 | ||||||
|
1 |
绪论 |
2 |
|
|
|
|
2 | |||
2 |
线性表 |
6 |
|
|
2 |
|
8 | ||||
3 |
栈和队列 |
4 |
|
|
3 |
|
7 | ||||
4 |
数组 |
6 |
|
|
|
|
6 | ||||
5 |
树和二叉树 |
8 |
|
|
3 |
|
11 | ||||
6 |
图 |
8 |
|
|
|
|
8 | ||||
7 |
查找 |
8 |
|
|
|
|
8 | ||||
8 |
内部排序 |
6 |
|
|
|
|
6 | ||||
9 |
|
|
|
|
|
|
| ||||
10 |
|
|
|
|
|
|
| ||||
11 |
|
|
|
|
|
|
| ||||
12 |
|
|
|
|
|
|
| ||||
13 |
|
|
|
|
|
|
| ||||
14 |
|
|
|
|
|
|
| ||||
15 |
|
|
|
|
|
|
| ||||
16 |
|
|
|
|
|
|
| ||||
总 计 |
48 |
|
|
8 |
|
56
| |||||
五、课程说明 | |||||||||||
课程英文名称 |
Data Structure | ||||||||||
主要先修课程 |
Pascal语言 或 C语言 | ||||||||||
适用专业类别 |
计算机应用类专业 | ||||||||||
主要教材(作者、教材名称、出版社) |
“数据结构” 严蔚敏、吴伟民 清华大学出版社 北京 1995年。
| ||||||||||
考核方式 |
考试 | ||||||||||
课程简介 |
各种类型的数据结构和查找,排序的各种方法 | ||||||||||
必 开
实 验
项 目 |
序号 |
项 目 名 称 |
学时 | ||||||||
1 |
线性表链式存储结构的应用 |
2 | |||||||||
2 |
停车场管理 |
3 | |||||||||
3 |
二叉树 |
1 | |||||||||
4 |
哈夫曼编码问题 |
2 | |||||||||
5 |
|
| |||||||||
6 |
|
| |||||||||
7 |
|
| |||||||||
8 |
|
|