《数据结构》课程教学大纲(计算机)
数据结构课程教学大纲
《数据结构》教学大纲课程编号:课程名称:数据结构适用专业:软件工程学时/学分:64/4先修课程:C语言程序设计后续课程:算法分析与设计,操作系统一、课程说明《数据结构》是软件工程专业的专业基础课,也是计算机类专业的必修核心课程。
通过本课程的学习,学生能够理解数据结构的基本概念、理论,掌握常用数据结构及其操作,能够通过分析研究数据对象的特征,在软件开发过程中选择适当的逻辑结构、存储结构及相应算法,并分析算法的时间与空间复杂度,提高解决复杂工程问题的能力。
二、课程目标1.本课程可以使学生具备以下能力:(1)理解数据结构与算法的基本概念,掌握常用基本数据结构的逻辑结构、存储结构及其操作的实现,能进行算法的时间、空间复杂性分析;(2)掌握常用查找和排序算法,并能够理解不同算法的适用场景;(3)能够针对问题进行数据对象的抽象、分析、建模,并选择、构建合适的数据结构;(4)能够在软件开发过程中,针对特定需求综合应用数据结构、算法复杂性分析等知识设计算法。
2.课程目标与毕业要求关系三、教学内容与要求1.理论部分2.实验部分四、课程目标考核评价方式及标准1.成绩评定方法及课程目标达成考核评价方式(1)成绩评定方法成绩评定依据期末考试成绩、平时成绩(实验、作业、测试、课堂互动、自主学习等)进行核定。
期末考试成绩占总评成绩的60%,平时成绩占总评成绩的40%。
(2)课程目标达成考核评价方式2.课程目标与考核内容3.考核标准(1)课程考试考核与评价标准(2)实验考核标准(3)作业考核标准五、参考书目[1]李春葆. 数据结构C语言版(第2版)[M]. 北京: 清华大学出版社. 2017.[2]严蔚敏, 吴伟民. 数据结构C语言版[M]. 北京: 清华大学出版社. 2012.[3]Weiss M.Allen. 数据结构与算法分析:C语言描述(原书第2版). 北京: 机械工业出版社. 2017.[4]陈越. 数据结构(第2版)[M]. 北京: 高等教育出版社. 2016.[5](美)Bruno R.Preiss著; 胡广斌等译. 数据结构与算法: 面向对象的C++设计模式[M].北京: 电子工业出版社. 2003.[6](美)Thomas H.Cormen, Charles E.Leiserson, Ronald L.Rivest, et al.著; 王刚, 邹恒明, 殷建平等译. 算法导论(原书第3版)[M]. 北京: 机械工业出版社. 2013.[7]殷人昆. 数据结构: 用面向对象方法与C++语言描述(第2版)[M]. 北京: 清华大学出版社. 2016.课程负责人:专业负责人:教学院长:。
《数据结构》课程教学大纲
《数据结构》课程教学大纲一、课程概述数据结构是计算机科学与技术专业的重要基础课程之一。
本课程旨在介绍数据结构的基本概念、常用数据结构及其应用。
通过本课程的学习,学生应具备设计和实现基本数据结构的能力,能够分析并解决实际问题中的数据组织与处理需求。
二、教学目标1. 掌握数据结构的基本概念和分类。
2. 理解不同数据结构的特点、存储结构和操作方式。
3. 能够应用各类数据结构解决实际问题,并分析其性能。
4. 具备编写高质量代码的能力,考虑代码的可读性和可维护性。
5. 培养团队合作意识和解决问题的能力。
三、教学内容1. 数据结构基础1.1 数据结构的定义和作用1.2 数据结构的分类及常用术语1.3 数据结构的表示与实现方式2. 线性结构2.1 线性结构的概念和特点2.2 线性表的顺序存储结构和链式存储结构2.3 线性表的基本操作(插入、删除、查找)2.4 栈和队列的定义、基本操作以及应用3. 非线性结构3.1 树形结构的概念和特点3.2 二叉树及其存储结构(顺序存储和链式存储)3.3 二叉树的遍历(先序、中序、后序)3.4 树与森林的转换和应用4. 图结构4.1 图的定义和基本术语4.2 图的存储结构(邻接矩阵和邻接表)4.3 图的遍历(深度优先搜索和广度优先搜索)4.4 最小生成树和最短路径算法5. 查找算法5.1 查找的基本概念和分类5.2 顺序查找算法5.3 二分查找算法5.4 哈希查找算法6. 排序算法6.1 排序的基本概念和分类6.2 内部排序算法(插入排序、冒泡排序、选择排序、快速排序、归并排序)6.3 外部排序算法四、教学方法1. 集中讲述与课堂演示相结合的教学方法。
2. 利用多媒体技术展示数据结构的基本概念、实例和操作过程。
3. 提供编程实践的机会,让学生独立设计和实现各类数据结构。
4. 组织小组讨论和团队合作,解决数据结构相关问题。
五、考核方式1. 平时成绩包括课堂表现、作业、实验和参与度。
数据结构课程教学大纲
《数据结构》课程教学大纲课程名称:数据结构(Data Structures)课程编号:CX414120A学分:4总学时:64(48+16)适用专业:计算机科学与技术先修课程:离散数学,C语言程序设计一、课程的性质、目的与任务数据结构是计算机科学与技术专业的一门专业基础课程。
通过课堂教学、课外练习和上机实习,使学生了解数据对象的特性及数据组织的基本方法,并初步具备分析和解决现实世界问题在计算机中的表示方法和及其处理的能力,让学生培养良好的程序设计技能,为后续课程的学习和科研工作的参与打下良好的基础。
二、教学基本要求✧了解线性表、栈、队列、字符串、数组、广义表、树、二叉树、图、查找表等几种数据结构的特性及数据组织的基本方法;✧理解各数据结构上的基础操作方法及复杂度的分析方法;✧掌握各数据结构及查找、排序的基本理论和基本知识,使学生具备从数据结构的角度出发,开发设计出较复杂软件的能力。
三、教学内容第一章绪论(4学时)1.数据,数据类型,数据结构(逻辑结构和存储结构)(1学时)2.数据结构的主要运算与基础知识(1学时)3.算法复杂度分析(2学时)算法的定义、算法的描述、算法设计的要求、算法分析初步第二章线性表(4学时)1.线性表的定义和基本运算(0.5学时)2.线性表的存储结构和实现(3学时)向量(顺序)存储结构、链式存储结构(单链表、双向链表和循环链表)3.链式表的应用(多项式的表示与相加) (0.5学时)第三章栈和队列(4学时)1.栈(2学时)栈的定义和基本运算、存储结构和实现、应用举例及栈与递归过程2.队列(2学时)队列的定义和基本运算、存储结构和实现及双端队列、输入和输出受限队列第四章串(3学时)1.串的定义、运算和存储结构(0.5学时)2.串的基本运算的实现(2.5学时)串的匹配、KMP算法及NEXT函数第五章数组和广义表(3学时)1.数组的定义和运算(0.5学时)2.数组的顺序存储结构及存储地址的计算(1学时)3.矩阵(特殊矩阵、稀疏矩阵)的压缩存储(1学时)4.广义表的定义、基本运算和存储结构(0.5学时)第六章树和二叉树(8学时)1.树的定义、基本运算和存储结构(1学时)2.二叉树的定义、性质和存储结构(顺序、链式) (1.5学时)3.二叉树的遍历和线索二叉树(2学时)4.树、二叉树与森林的转换;树和森林的遍历(1.5学时)5.二叉树的应用(2学时)二叉排序树、Huffman树第七章图(8学时)1.图的定义和术语(1学时)2.图的存储结构(2学时)3.图的遍历(1学时)4.图的连通性问题(连通分量、生成树、最小生成树) (1学时)5.DAG图及其应用(2学时)拓扑排序、关键路径6.最短路径(1学时)单源最短路径、每对顶点间的最短路径第九章查找(8学时)1.概述(0.5学时)2.顺序表的查找(顺序查找、折半查找、分块查找) (2学时)3.树表的查找(3学时)二叉排序树、平衡二叉树、B_树和B+树4.哈希表(Hash) (2.5学时)基本概念、Hash函数与Hash表的构造方法、Hash表的查找和冲突处理方法第十章内部排序(6学时)1.概述(0.5学时)2.插入排序(直接插入排序、折半插入排序、2-路插入排序、Shell排序) (1.5学时)3.选择排序(直接选择排序、树型选择排序、堆排序) (1.5学时)4.交换排序(冒泡排序、快速排序) (1.5学时)5.归并排序(2-路归并排序) (0.5学时)6.基数排序(0.5学时)实验内容:(8学时)实验一、指针与结构体操作实验二、线性表及其应用实验三、栈与队列操作实验四、串及其应用实验五、数组及其应用实验六、二叉树建树与遍历实验七、图的基本操作实验八、查找与排序四、教学参考书[1]严蔚敏等,《数据结构》(第二版)清华大学出版社,1993[2]严蔚敏等,《数据结构题集》,1995[3] William Ford,William Topp,《Data Structure with C++》清华大学出版社Prentice Hall联合出版,1996五、说明实验内容具体内容及要求见实验指导书。
《数据结构》教学大纲
《数据结构》教学大纲数据结构教学大纲一、课程介绍1.1课程名称:数据结构1.2学分:3学分1.3先修课程:计算机基础1.4课程性质:必修课程1.5学习方式:课堂讲授、实践操作、实验、课程作业二、教学目标2.1知识目标通过本课程的学习,学生应该掌握以下知识:-基本数据结构的概念和特性,包括数组、链表、栈、队列、树和图等;-常用的数据结构算法,如查找、排序、插入和删除等;-理解数据结构的时间复杂度和空间复杂度,并能进行分析和评估;-能够选择合适的数据结构和算法来解决实际问题。
2.2能力目标-能够运用所学的数据结构和算法解决实际问题;-能够分析和评估不同数据结构和算法的优劣;-具备良好的编程能力,能够实现数据结构的基本操作;-能够进行抽象思维和问题建模,将实际问题转化为数据结构的操作。
2.3态度目标-具备良好的团队合作和沟通能力,能够与他人合作解决问题;-具备批判性思维和创新精神,能够提出新的数据结构和算法。
三、教学内容3.1数据结构概述-数据结构的定义和分类;-数据结构与算法的关系;-数据结构的应用领域。
3.2线性表-线性表的定义和基本操作;-顺序表和链表的实现;-线性表的应用。
3.3栈和队列-栈和队列的定义和基本操作;-栈和队列的实现;-栈和队列的应用。
3.4树和二叉树-树和二叉树的定义和基本操作;-二叉树的遍历和线索化;-树和二叉树的应用。
3.5图-图的定义和基本操作;-图的存储结构和遍历算法;-图的应用。
3.6查找和排序-查找算法的分类和基本思想;-顺序查找和二分查找;-排序算法的分类和基本思想;-冒泡排序、插入排序和快速排序。
四、教学方法4.1讲授法:通过课堂讲授,向学生介绍数据结构的概念、特性和应用,讲解基本操作和算法的原理和实现方法。
4.2实践操作:通过编程实践和课程作业,让学生运用所学的数据结构和算法解决实际问题,加深对知识的理解和运用能力。
4.3实验:通过实验,让学生亲自操作和实验不同的数据结构,加深对数据结构和算法的理解。
计算机专业《数据结构》教学大纲
计算机专业《数据结构》教学大纲一、课程基本信息课程名称:数据结构课程类别:专业基础课课程学分:X学分课程总学时:X学时适用专业:计算机专业二、课程的性质、目的和任务(一)课程性质《数据结构》是计算机专业的一门重要的专业基础课,它是介于数学、计算机硬件和计算机软件之间的一门核心课程,不仅是程序设计的基础,也是设计和实现操作系统、数据库系统、编译系统及其他系统程序和大型应用程序的重要基础。
(二)课程目的通过本课程的学习,使学生能够掌握数据结构的基本概念、基本原理和基本算法,培养学生分析问题和解决问题的能力,为后续课程的学习和今后从事软件开发工作打下坚实的基础。
(三)课程任务1、使学生掌握数据结构的基本概念和术语,包括数据、数据元素、数据对象、数据结构等。
2、使学生掌握线性表、栈、队列、串、数组、广义表、树、图等常用数据结构的逻辑结构、存储结构和基本操作的实现算法。
3、使学生掌握查找和排序的基本算法,包括顺序查找、二分查找、哈希查找、插入排序、选择排序、交换排序、归并排序等。
4、培养学生运用所学数据结构和算法知识解决实际问题的能力,能够根据具体问题选择合适的数据结构和算法,并进行算法设计和程序实现。
5、培养学生的程序设计能力和良好的编程风格,提高学生的代码可读性和可维护性。
三、课程教学内容和要求(一)绪论1、教学内容数据结构的基本概念和术语,包括数据、数据元素、数据对象、数据结构、数据类型等。
数据结构的研究内容和研究方法。
算法的基本概念和特性,包括有穷性、确定性、可行性、输入和输出。
算法的描述方法,包括自然语言描述、流程图描述、伪代码描述等。
算法的分析方法,包括时间复杂度和空间复杂度的分析。
2、教学要求理解数据结构的基本概念和术语。
了解数据结构的研究内容和研究方法。
掌握算法的基本概念和特性。
掌握算法的描述方法。
掌握算法的时间复杂度和空间复杂度的分析方法。
(二)线性表1、教学内容线性表的定义和逻辑结构。
《数据结构》课程教学大纲
课程教学大纲课程代号:07021021学时数:56+S16适用专业:计算机科学与技术专业一、本课程的性质、目的和任务1。
本课程的性质数据结构是高等院校计算机各专业的核心课程之一,也是重要的专业基础课,主要介绍和研究各种基本的数据结构及其应用.2。
本课程的目的通过本课程的学习,使学生获得有关数据的各种逻辑结构、在存储器上的存储结构以及相关运算的算法:并能够根据实际问题的需要选择和设计出相应运算的算法。
为《操作系统》、《数据库概论》等后续课程的学习及为应用软件特别是非数值应用软件的开发打下良好的基础和时间基础。
3.本课程的任务本课程的主要任务是培养学生:(1)熟练掌握各种数据结构的特点、存储表示,操作算法及在计算机科学中基本应用。
(2)初步掌握算法的时间分析和空间分析的技巧。
(3)培养、训练学生选用合格的数据结构和使用类C语言编写质量高、风格好的应用程序及初步评价算法程序的能力.二、教学基本内容和要求1。
绪论(1)教学目的与要求熟悉数据结构的一些基本概念;了解抽象数据类型的定义、表示和实现方法;掌握C++语言的语句及算法描述的书写规则;掌握计算语句频度和估算算法时间复杂度的方法。
(2)主要内容数据、数据元素、数据对象、数据类型、数据结构等概念;抽象数据类型的定义、表示和实现方法;描述算法的C++语言;算法设计的基本要求以及从时间和空间角度分析算法的方法。
(3)重点、难点重点:算法的时间和空间复杂性的评价;难点:算法效率的度量。
2.线性表(1)教学目的与要求掌握线性表的定义和顺序存储结构;掌握线性表的链式存储结构;掌握线性表的插入、删除、归并等基本运算;了解静态链表和一元多项式的有关知识。
(2)主要内容线性表的顺序存储结构、线性表的链式存储结构;在线性表的两类存储结构(顺序的和链式的)上实现基本操作;静态链表的存储结构和运算;一元多项式的抽象数据类型定义、表示及加法的实现。
(3)重点、难点重点:线性表的链式存储结构;难点:静态链表的存储结构和运算。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构》课程教学大纲一、课程基本信息二、课程教学目标本课程介绍软件设计中常用的线性表、栈、队列、串、数组、广义表、树、二叉树、图结构等几种基本的数据结构及其存储结构和所施加的运算与实现等。
另外,还介绍软件设计中常用的几种查找和排序算法,以及递归技术等,在介绍各项内容的同时,还涉及到算法设计与分析的基本技术和面向对象程序设计的理论与技术等内容。
通过本课程的学习,达到以下目标:熟练掌握上述结构及其运算的实现和性能特点,掌握各种排序和查找运算以及递归技术,能对给定的实际问题,建立准确的问题模型,设计有效的问题求解方法,选择合理的数据结构及其运算集,设计有效的算法。
三、教学学时分配《数据结构》课程理论教学学时分配表*理论学时包括讨论、习题课等学时。
《数据结构》课程实验内容设置与教学要求一览表四、教学内容和教学要求第一章绪论(2学时)(一)教学要求1.了解数据结构的各种基本概念和术语;2.了解数据类型和抽象数据类型的概念;3.理解算法的设计目标;4.掌握算法的时间复杂度概念和算法的时间复杂度分析方法。
(二)教学重点与难点教学重点:数据结构的逻辑结构、存储结构及数据的运算三方面的概念及相互关系教学难点:算法复杂度的分析方法。
(三)教学内容第一节什么是数据结构1.数据结构的定义2.逻辑结构类型3.存储结构类型4.数据结构和数据类型第二节算法及其描述1.什么是算法2.算法描述第三节算法分析1.算法设计的目标2.算法效率分析3.算法存储空间分析本章习题要点:基本概念、算法复杂度的分析方法第二章线性表(10学时)(一)教学要求1.理解线性表的逻辑结构和基本操作;2.理解线性表的顺序存储结构和实现方法;3.理解线性表的链式存储结构和实现方法;4.了解单循环链表和双向链表的概念和插入、删除等操作方法。
(二)教学重点与难点教学重点:顺序表和单链表上实现的各种基本算法及相关的时间性能分析。
教学难点:链表本质及其操作的实现算法、线性表相关的应用。
(三)教学内容第一节线性表1.线性表的定义2.线性表的抽象数据类型描述第二节线性表的顺序存储结构1.线性表的顺序存储结构——顺序表2.顺序表基本运算的实现第三节线性表的链式存储结构1.线性表的链式存储结构——链表2.单链表基本运算的实现3.双链表4.循环链表本章习题要点:第三章栈和队列(12学时)(一)教学要求1.理解栈的定义、特征及在其上所定义的基本运算;2.掌握在两种存储结构上对栈所施加的基本运算的实现;3.了解数制转换、括号匹配、表达式运算、迷宫等几种栈的典型应用;4.理解队列的定义、特征及在其上所定义的基本运算;5.掌握在两种存储结构上对队列所施加的基本运算的实现。
(二)教学重点与难点教学重点:栈和队列在两种存储结构上实现的基本运算。
教学难点:栈与递归过程的实现,循环队列中对边界条件的处理。
(三)教学内容第一节栈1.栈的定义2.栈的顺序存储结构及其基本运算实现3.栈的链式存储结构及其基本运算的实现4.栈的应用举例第二节队列1.队列的定义2.队列的顺序存储结构及其基本运算的实现3.队列的链式存储结构及其基本运算的实现4.队列的应用举例本章习题要点:栈和队列的基本运算的实现第四章串(5学时)(一)教学要求1.掌握串的定义、存储及串的比较、求子串、连接、赋值等基本运算;2.了解基本的串模式匹配算法和KMP匹配算法。
(二)教学重点与难点教学重点:串的定义及基本运算,串的模式匹配算法。
教学难点:KMP模式匹配方法。
(三)教学内容第一节串的基本概念第二节串的存储结构1.串的顺序存储结构——顺序串2.串的链式存储结构——链串第三节串的模式匹配1.Brute Force算法2.KMP算法本章习题要点:第五章数组和广义表(3学时)(一)教学要求1.掌握数组的定义及数组元素的存储方式;2.掌握特殊矩阵的压缩存储及运算;3.了解稀疏矩阵的三元组表、理解以三元组表示稀疏矩阵时进行矩阵运算采用的处理方法;4.了解广义表的定义、存储和基本运算。
(二)教学重点与难点教学重点:多维数组的存储方式、矩阵的压缩存储方式。
教学难点:稀疏矩阵的压缩存储表示下实现的算法。
(三)教学内容第一节数组1.数组的基本概念2.数组的存储结构3.特殊矩阵的压缩存储第二节稀疏矩阵1.稀疏矩阵的三元组表示2.稀疏矩阵的十字链表表示第三节广义表1.广义表的定义2.广义表的存储结构3.广义表的运算本章习题要点:特殊矩阵的压缩存储及运算第六章树(12学时)(一)教学要求1.掌握树和二叉树的定义及基本运算;2.掌握二叉树的性质、存储结构和操作的实现方法;3.掌握二叉树的先序、中序、后序、层序遍历过程及相应的遍历算法;4.了解二叉树的线索化处理过程;5.了解树的孩子表示法和双亲表示法,了解树的孩子-兄弟表示法;6.掌握树与二叉树的相互转化方法;7.掌握哈夫曼树的概念和哈夫曼树在编码方面的应用方法。
(二)教学重点与难点教学重点:二叉树的性质;二叉树的遍历算法和二叉树遍历算法的应用;哈夫曼树在编码方面的应用方法。
教学难点:二叉树的遍历算法及哈夫曼树的构造算法(三)教学内容第一节树的基本概念1.树的定义2.树的逻辑表示方法3.树的基本术语4.树的存储结构及基本运算第二节二叉树的概念和性质1.二叉树的概念2.二叉树的性质3.二叉树与树、森林之间的转换第三节二叉树存储结构1.二叉树的顺序存储结构2.二叉树的链式存储结构第四节二叉树的基本运算及其实现1.二叉树的基本运算概述2.二叉树的基本运算算法实现第五节二叉树的遍历1.二叉树遍历的概念2.二叉树遍历递归算法3.二叉树遍历非递归算法4.层次遍历算法5.线索二叉树第六节哈夫曼树1.哈夫曼树概述2.哈夫曼树的构造算法3.哈夫曼编码本章习题要点:二叉树的先序、中序、后序、层序遍历过程及相应的遍历算法;第七章图(12学时)(一)教学要求1.掌握图的定义以及顶点的度、连通和强连通、生成树等术语;2.掌握图的邻接矩阵、邻接链表存储,了解图的邻接多重表和十字链表存储;3.掌握图的深度优先遍历和广度优先遍历算法;4.掌握求最小生成树的Prim算法和Kruskal算法;5.掌握拓扑排序算法,了解关键路径求解算法;6.了解求最短路径的迪杰斯特拉(Dijkstra)算法和弗洛伊德(Floyd)算法。
(二)教学重点与难点教学重点:图的数组和邻接表存储方法;图的深度和广度优先搜索算法;图的有关应用问题及算法。
教学难点:深度优先和广度优先遍历算法;最小生成树、关键路径、最短路径的算法思想。
(三)教学内容第一节图的基本概念1.图的定义2.图的基本术语第二节图的存储结构1.邻接矩阵存储方法2.邻接表存储方法第三节图的遍历1.图的遍历的概念2.深度优先搜索遍历3.广度优先搜索遍历第四节生成树和最小生成树1.生成树的概念2.无向图的连通分量和生成树3.普里姆算法4.克鲁斯卡尔算法第五节拓扑排序第六节最短路径1.路径的概念2.从一个顶点到其余各顶点的最短路径3.每对顶点之间的最短路径第七节AOE网与关键路径本章习题要点:图的深度优先遍历和广度优先遍历算法,图的应用。
第八章查找(6学时)教学难点:二叉排序树的插入、删除算法。
(一)教学要求1.掌握查找的基本概念和查找方法的评判标准;2.理解顺序查找和有序查找的算法设计方法,理解索引查找的基本结构;3.掌握二叉排序树定义、创建、插入、删除和查找算法及查找效率分析;4.掌握哈希函数、哈希冲突函数和哈希表的构造方法。
(二)教学重点与难点教学重点:顺序查找、二分查找,二叉排序树上查找以及哈希表上查找的基本思想、算法实现、效率分析。
(三)教学内容第一节查找的基本概念第二节线性表的查找1.顺序查找2.二分查找3.索引存储结构和分块查找第三节树表的查找1.二叉排序树2.平衡二叉树第二节哈希表查找1.哈希表的基本概念2.哈希函数构造方法3.哈希冲突解决方法本章习题要点:各种查找的实现方法。
第九章排序(10学时)教学重点:基本插入排序和希尔排序算法,冒泡排序和快速排序算法,简单选择排序和堆排序算法,归并排序算法,各种排序算法的时间、空间效率分析教学难点:多重循环希尔排序算法、快速排序算法、堆排序算法和归并排序算法(一)教学要求1.掌握基本的插入排序算法、改进算法(希尔排序算法)及算法效率分析;2.掌握冒泡排序、快速排序算法及算法效率分析;3.掌握简单选择排序、堆排序算法及算法效率分析;4.掌握归并排序算法及算法效率分析,了解基数排序方法。
(二)教学重点与难点教学重点:基本插入排序和希尔排序算法,冒泡排序和快速排序算法,简单选择排序和堆排序算法,归并排序算法,各种排序算法的时间、空间效率分析教学难点:多重循环希尔排序算法、快速排序算法、堆排序算法和归并排序算法(三)教学内容第一节排序的基本概念第二节插入排序1.直接插入排序2.希尔排序第三节交换排序1.冒泡排序2.快速排序第四节选择排序1.直接选择排序2.堆排序第五节归并排序第六节基数排序本章习题要点:各种排序的实现方法。
五、教学方法或手段1、教学方法,采用讲授法与自学辅导式相结合的教学方法。
2、教学手段,采用多媒体教学手段。
六、考核方式及评价要求本课程是计算机科学与技术专业基础课,以笔试方式为主进行考试,考试内容应体现教学大纲的基本要求,笔试成绩占60%,上机实验占据20%,平时成绩占据20%。
七、教材及教学主要参考书推荐教材:《数据结构教程》,李春葆主编,清华大学出版社,2013年6月第4版。
《数据结构》,严蔚敏主编,清华大学出版社,2012年7月第5版。