课程教案
课程名称: 数据结构
授课教师:
学习对象:
任课时间:
一 、 学 生 情 况 分 析
数据结构是计算机专业的一门核心专业课程。学生在前期的学习中已经学习了 C 语言程
序设计课程。通过本课程学习使学生对提高编写程序的能力以及解决实际问题的能力。
二 、 课 程 教 学 目标
《数据结构》是计算机学科中一门核心专业基础课。主要介绍如何合理地组织数据、
有效地存储和处理数据,正确地设计算法以及对算法的分析和评价。通过本课程的学习,
使学生深透地理解数据结构的逻辑结构和物理结构的基本概念以及有关算法,培养基本
的、良好的程序设计技能,编制高效可靠的程序,为学习操作系统、编译原理和数据库等
课程奠定基础。
三 、 课 程 教 学 内 容
第一章 绪论
教学内容:
1) 什么是数据结构
2 ) 抽象数据类型概念;数据类型;数据抽象与抽象数据类型;用于描述数据结构的
语言
3 ) 数据结构的抽象层次
4 ) 算法定义
5 )性能分析与度量;算法的性能标准;算法的后期测试;算法的事前估计;空间复
杂度度量;时间复杂度度量;时间复杂度的渐进表示法;
教学要求:
了解:数据结构基本概念及数据结构的抽象层次
了解:抽象数据类型概念
了解:算法的定义及算法特性
掌握:算法的性能分析与度量方法
第二章 线性表
教学内容:
1) 线性表的定义和特点
2 ) 线性表的顺序存储及查找、插入和删除操作
3 ) 线性表的链式存储及查找、插入和删除操作
4 ) 使用线性表的实例
教学要求:
了解:线性表的定义和特点
熟练掌握:线性表的顺序存储结构的查找、插入和删除等基本操作
熟练掌握:单链表、循环链表及双向链表的定义及实现
掌握:熟练掌握单链表的应用方法
第三章 栈和队列
教学内容:
1) 栈:栈的抽象数据类型;栈的顺序存储表示;栈的链式存储表示
2 ) 队列:队列的抽象数据类型;队列的顺序存储表示;队列的链式存储表示
3 ) 队列的应用举例
教学要求:
熟练掌握:栈的定义及实现
熟练掌握:队列的定义及实现
掌握:能运用栈和队列解决简单实际问题
第四章 串
教学 :内容:
1) 字符串的抽象数据类型
2) 字符串操作的实现
3) 字符串的模式匹配
教学要求:
熟练掌握:字符串的定义方式
熟练掌握:字符串的各种操作的实现
了解:字符串的模式匹配算法
第五章 数组和广义表
教学 :内容:
1) 数组的定义和初始化
2) 作为抽象数据类型的数组的顺序存储方式
教学要求:
了解:作为抽象数据类型的数组的定义
熟练掌握:顺序表的数组定义方式及实现
第六章 树和二叉树
教学内容:
1) 树和森林的概念:树的定义;树的术语;树的抽象数据类型;森林的概念
2) 二叉树:二叉树的定义;二叉树的性质;二叉树的抽象数据类型
3) 二叉树的表示:数组表示;链表存储表示
4) 二叉树的遍历:中序遍历;前序遍历;后序遍历;应用二叉树遍历的实例;二
叉树的中序非递归算法
5) 线索化二叉树:线索;中序线索化二叉树;前序与后序的线索化
6) 树与森林:树的存储表示;森林与二叉树的转换;树的遍历;森林的遍历
7) 二叉树的计数
8) 霍夫曼树:路径长度;霍夫曼树;霍夫曼树编码
教学要求:
了解:树和森林的概念
掌握:二叉树的概念