1、课程名称:数据结构课程编码:7085401课程学分:4 学分课程学时:64 学时适用专业:信息与计算科学数据结构Data Structure 教学大纲一、课程性质与目的数据结构是介于数学、计算机硬件和计算机软件之间的一门计算机科学与技术专业的核心课程,是高级程序设计语言、编译原理、操作系统、数据库、人工智能等课程的基础。同时,数据结构技术也广泛应用于信息科学、系统工程、应用数学以及各种工程技术领域。数据结构课程集中讨论软件开发过程中的设计阶段、同时设计编码和分析阶段的若干基本问题。此外,为了构造出好的数据结构及其实现,还需考虑数据结构及其实现的评价与选择。因此,数据结构的内容包括抽象、实现和评
2、价三个层次,从数据表示和数据处理上看有五个基本组成“要素”分别是逻辑结构,存储结构、基本运算、算法及不同数据结构的比较与算法分析。通过学习,使学生初步具备分析问题、解决问题的能力,养成良好的程序设计风格,积聚和提高基本的分析设计能力,为后续课程的学习打下坚实的基础。二、教学基本内容及基本要求 1、教学基本内容第一章 概述了解抽象数据的类型掌握对象设计,面向对象程序设计了解程序测试与维护,了解类继承的应用范围第二章 基本数据类型掌握整型、字符型、实数型、枚举型、数组型的概念理解指针、文本串、变量、记录、文件了解数组和记录的应用第三章 抽象数据类型和类了解用户类型类掌握对象和信息传递过程理解对象数
3、组,多构造函数掌握三角矩阵第四章 栈和队列理解栈、类 Stack、队列、类 Queue了解优先级队列掌握事件驱动模拟第五章 树了解树的基本概念,理解二叉树的性质和存储结构遍历二叉树和线索二叉树理解树的存储结构和遍历掌握哈夫曼树及其应用第六章 图理解图的基本概念图的存储结构掌握图的遍历,最小生成树,最短路径拓扑排序和关键路径第七章 查找了解静态查找表(顺序表,有序表,索引顺序表)动态查找表(二叉排序树,平衡二叉树,B-树和 B+树)的建立和查找掌握哈希表的建立,查找及分析第八章 排序掌握插入排序掌握交换排序(起泡排序,快速排序)掌握选择排序掌握归并排序,了解基数排序2、教学基本要求(1)掌握各种
4、数据结构的特点及实现方法和适用范围(2)培养学生阅读、分析和设计算法的能力(3)进行必要的分析设计基本技能训练(4)掌握常规设计方法和技巧三、本课程与其它相关课程的联系与分工本课程的先修课程为基础的程序设计语言,如 C+,Java 等,而后续课程为算法分析与设计,编程实习等。本课程是学习高级程序设计语言的后续课程,起着承上启下的作用。四、课程各教学环节和各篇章(节)学时分配教学内容 讲课 实验(上机) 习题课第一章 概述 4第二章 基本数据类型 4 2 2第三章 抽象数据类型和类 2 2第四章 栈和队列 6 2 2第五章 树 6 2 2第六章 图 6 2 2第七章 查找 4 2 2第八章 排序
5、 6 2复习 2小结 40 14 10合计 64五、本课程采用的教学方法和教学手段本课程的教学方法注重理论和实践相结合,运用多媒体等教学手段,注重学生实际动手能力,理论课和计算机软件操作相结合,让学生在实际操作过程中加深对知识的理解,提高运用知识的能力。六、教材及教学参考资料教材: 严蔚敏, 数据结构 ,清华大学出版社(C 语言版) ,1997 年参考书:许卓群, 数据结构 ,高等教育出版社,1987 年缪淮扣等, 数据结构 C实现 ,科学出版社,2002 年七、本课程的考核方法及成绩评定标准采用闭卷笔试方式,要求卷面内容覆盖大纲 80%以上,在试题中对不同能力层次要求的分数比例,一般为:识记占 30%,领会占 50%,应用占 20%。百分制评定成绩,平时成绩占 30%(含作业,课堂表现等) 。八、其它问题的说明为了保证达到本课程的教学目的与要求,每次课后都布置适当的作业,学生作业要求以书面形式上交。课外复习,练习,答疑时间均合理安排,并且,按照课程特点适当增多了实验时间。大纲撰写人: 郭磊磊大纲审阅人: 张键红系负责人: 张键红学院负责人: 张建国制定(修订)日期: 2018 年 1月