数据结构与算法分析课程标准 联系客服

发布时间 : 星期一 文章数据结构与算法分析课程标准更新完毕开始阅读ea0abc83910ef12d2bf9e703

《数据结构与算法分析B》课程标准

一、 课程性质与任务

本课程是计算机科学中一门综合性的基础课程,是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础,它在计算机科学中具有承上启下的核心地位,是信息管理与信息系统专业学生必修的专业基础课程。

通过本课程的学习,学生能根据实际应用研究的要求,对大量的表面上杂乱无章的数据进行有效地组织、存储和处理,编制出相应的高效算法。学生必须熟练掌握计算机程序设计中常见的各种数据的逻辑结构、存储结构及相应的运算,掌握算法的时间分析和空间分析的技术,并能根据计算机加工的数据特性运用数据结构的知识和技巧设计出更好的算法和程序,培养良好的程序设计能力。

学习数据结构应先修《计算机文化基础》、《高等数学》、《离散数学》、《JAVA程序设计》、《C#程序设计》《概率论与数理统计》,后续课程主要有《管理信息系统》《数据库原理及应用》《数据挖掘》,《网络程序设计》等。

与先修课程的关系:数据逻辑结构的学习应在《离散数学》课程中完成,这样才会有充足的时间讲解物理存储结构,并分析每一种不同存储结构的优缺点。在分析插入和删除等操作的效率时,因为不同位置的数据操作概率不同,不结合概率论与数理统计的知识便无法分析。数据的存储结构是数据在计算机中的存储,没有人机交流语言无法描述存储结构,所以必须先修高级语言《JAVA程序设计》、《C#程序设计》,分析算法的时间复杂度和空间复杂度时需要用到高等数学的知识。

与后续课程的关系:数据结构和算法分析可以为后续课程提供程序设计和系统开发方法论方面的指导与帮助。

二、课程目标

1.知识目标

(1)知道《数据结构与算法分析》这门学科的性质、在计算机科学中的地位和独立价值。知道这门学科的研究范围、应用领域、研究方法。

(2)掌握与数据结构有关的基本概念、明确数据的逻辑结构和物理结构的差别。

(3)掌握各种主要数据结构线性表、栈、队列、串、树和图的特点、计算机内的表示方法,以及处理数据的算法实现。

(4)会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构及相应的算法,并了解对算法的时间分析和空间分析技术。

2.能力目标

(1)培养学生数据抽象能力,能为应用涉及的数据选择合适的逻辑结构。 (2)培养学生理解计算机思维方式能力,能为各种逻辑结构设计合适的存储结构。

(3)培养学生进一步提高程序设计质量的能力。 (4)培养学生理论联系实际能力及自学能力。 3.素质目标

(1)具备运用数据结构的理论方法进行高质量程序设计的素质 (2)具有良好的团队合作精神。

三、课程基本信息和内容要求

学分 3 序号 教学项目 课程基本信息 理论学48 实验学时 识 课程内容及要求 教学设计建议 教学内容和教学要求 1.数据结构的概念和术语 2.算法的描述与算法分析 3.数据结构的地位 1.掌握数据结构的概念和术语 2.理解算法的描述与算法分析 3.理解数据结构的地位 0 参考学时 1 绪论 1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。 6 2 线性表 1.线性表的类型定义 2.线性表的顺序存储与实现, 3.性表的链式存储结构与实现 4.线性表的应用 1掌握线性表的类型定义、 2掌握线性表的顺序存储与实现, 3掌握线性表的链式存储结构与实现 4.了解线性表的应用 1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。 6 3 栈和队列 1.栈和队列的定义 2.栈和队列的顺序存储和链式存储 3.栈和队列的应用 1.掌握,栈的定义、栈的存储及其实现, 2.掌握队列的定义、存储及其实现, 3.了解栈和队列的应用 1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。、解决问题 6 4 串 1串类型的定义,串的存储 2.串的运算实现 1.掌握串类型的定义,串的存储 2.理解串的运算实现 1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。 4 5 数组与广义表 1.掌握:数组的定义、数据的顺序存储和实现,特殊矩阵的压缩存储,稀疏矩阵的三元组表存储 2.理解:稀疏矩阵的十字链表 3.了解:广义表的定义和广义表的存储结构 1.掌握:数组的定义、数据的顺序存储和实现,特殊矩阵的压缩存储,稀疏矩阵的三元组表存储 2.理解:稀疏矩阵的十字链表 3.了解:广义表的定义和广义表的存储结构 1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。 6 6 树与二叉树 7 图 8 查找 9 排序 1.树的定义和基本术语、树的存储结构、二叉树的概念、存储及遍历二叉树、线索二叉树、哈夫曼树及其应用 2.树和森林的概念、树的存储结构、森林与树的转换及树和森林的遍历 3.二叉排序树的定义、基本操作 1.掌握树的定义和基本术语、树的存储结构、二叉树的概念、存储及遍历二叉树、线索二叉树、哈夫曼树及其应用 2.理解树和森林的概念、树的存储结构、森林与树的转换及树和森林的遍历 3.了解二叉排序树的定义、基本操作 1.图的定义和术语、图的存储结构及操作实现、图的遍历、最小生成树 2.图的连通性问题 3.有向无环图的拓扑排序,关键路径、最短路径 1.掌握:图的定义和术语、图的存储结构及操作实现、图的遍历、最小生成树 2.理解:图的连通性问题 3.理解:有向无环图的拓扑排序关键路径、最短路径 1.顺序查找法,折半查找法,二叉排序树的查找,哈希表及其查找 2.分块查找法,二叉平衡树生成及其查找 1.掌握顺序查找法,折半查找法,二叉排序树的查找,哈希表及其查找 2.理解分块查找法,二叉平衡树生成及其查找 1.直接插入排序、折半插入排序、冒泡排序、快速排序、简单选择排序、归并排序 2.理解:希尔排序、堆排1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。 6 1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。 6 1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。 4 1. 多媒体教学,进行启发诱导,重点讲解; 2. 课堂练习; 3. 布置课后作业。 2