《数据结构》课程教学大纲(信息与计算)
数据结构_48学时教学大纲

数据结构_48学时教学大纲一、课程概述(2学时)1.1课程名称:数据结构1.2学时安排:总学时48学时1.3先修知识:计算机基础知识、C++编程基础1.4课程性质:必修1.5主要教材:《数据结构与算法分析--C语言描述》1.6教学目标:通过本课程的学习,使学生掌握数据结构的基本概念、基本算法和设计原理,培养学生分析和解决实际问题的能力。
二、课程内容和学时安排(38学时)2.1线性表(6学时)2.1.1线性表的定义和基本操作2.1.2顺序表和链表的实现与应用2.1.3线性表的应用实例分析2.2栈与队列(5学时)2.2.1栈和队列的定义和基本操作2.2.2栈和队列的顺序存储结构和链式存储结构2.2.3栈和队列的应用实例分析2.3树与二叉树(8学时)2.3.1树的基本概念和性质2.3.2二叉树的定义和基本操作2.3.3二叉树的遍历算法2.3.4二叉树的存储结构和实现2.3.5树和二叉树的应用实例分析2.4图(8学时)2.4.1图的基本概念和性质2.4.2图的存储结构和基本操作2.4.3图的遍历算法2.4.4最小生成树算法2.4.5最短路径算法2.4.6图的应用实例分析2.5查找与排序(7学时)2.5.1查找算法的分类和基本原理2.5.2顺序查找和二分查找2.5.3哈希查找2.5.4排序算法的分类和基本原理2.5.5插入排序、选择排序和冒泡排序2.5.6快速排序和归并排序2.5.7查找和排序的应用实例分析三、教学方法和学时分配(6学时)3.1教学方法:课堂讲授、案例分析、编程实践3.2学时分配:理论课32学时,实践课16学时四、考核方式(2学时)4.1考核方式:考试占70%,平时作业和实验占30%4.2考核内容:理论知识和实践能力的综合考核五、教学资源和参考资料(2学时)5.1教学资源:计算机实验室、项目演示设备、教学软件等5.2参考资料:《数据结构与算法分析--C语言描述》、相关网络资源六、其他事项(2学时)。
数据结构教学大纲

数据结构教学大纲课程名称:《数据结构》学时:64 学分:4 开课学期:2一、课程的性质、目的和任务《数据结构》是介于数学、计算机硬件和计算机软件之间的一门计算机科学与技术专业的核心课程,是操作系统、数据库原理、编译原理、软件工程、人工智能等课程的基础。
数据结构技术广泛应用于信息科学、系统工程、应用数学以及各种工程技术领域。
通过本课程的学习,使学生了解软件分析阶段、设计阶段、编码阶段的若干基本问题,明确数据结构的内容包括抽象、实现和评价三个层次,即五个基本组成“要素”:逻辑结构,存储结构、基本运算、算法及不同数据结构的比较与算法分析,初步具备分析问题、解决问题的能力,养成良好的程序设计风格。
为学生在此领域中继续学习和研究打下坚实的基础。
二、授课对象计算机类专业(包括计科、软件、信息安全)、管理类专业(信管、电子商务、物流)三、本课程与其它课程的联系本课程的先修课程是《计算机基础》、《高级程序设计语言》,后续课程是《操作系统》、《数据库原理》、《编译原理》、《软件工程》、《算法设计》等。
四、讲授内容与学时分配掌握程度用符号表示:“※”表示不作要求,“○”表示掌握其概念及使用方法,但一般无需编程实现,“☆”为重点掌握概念及应用,且一般需要计算或编程实现。
章节序号掌专握业程方度向内容重要知识点学时计科类管工类1 绪论 2基本概念和术语○○抽象数据类型表示与实现○○算法和算法分析○○时间复杂度计算☆○2 线性表8线性表的概念○○顺序表定义和特点☆☆存储及操作☆☆性能分析☆○链表单链表定义和操作☆○循环链表☆○双向链表○※线性表的应用多项式加法☆○Josephus游戏解法☆※集合求并☆※3 栈和队列 6栈的定义及实现顺序栈☆☆链栈○※栈的应用数制转换☆☆括弧匹配☆☆迷宫○※表达式求解○※递归递归的应用☆☆递归和非递归转换○※队列顺序队列☆☆链队列○※循环队列☆☆队列的应用配舞伴问题☆※杨辉三角☆※4 数组和串 6数组的类型定义☆☆数组按行、列优先存储☆☆特殊矩阵的压缩存储○○稀疏矩阵转置☆○加、乘等应用○※串的定义和顺序存储☆☆串的模式匹配朴素匹配☆○KMP匹配○※广义表※※5 树和二叉树12树定义和基本术语☆☆树的表示方法○○树的存储结构○○二叉树满二叉树、完全二叉☆☆树二叉树的性质☆☆二叉树的顺序存储☆☆和二叉链式存储二叉树的遍历先根、中根、后根☆☆层次遍历☆○线索二叉树○※树和森林与二叉树的转换○○树的应用二叉树节点数量☆☆二叉树叶节点数量☆☆二叉树的深度☆☆判断正则二叉树☆☆哈夫曼树及应用☆※6 图12图的定义和术语☆☆图的存储结构及实现邻接矩阵和邻接☆☆表其他存储结构○※图的遍历深度优先、广度优先☆☆连通分量☆☆最小生成树Kruskal算法☆○Prim算法☆○最短路径Dijkstra算法☆○Floyd算法○○有向无环图及其应用基本概念☆○AOV网和拓扑排序○○AOE网和关键路径○○7 查找8基本概念☆☆静态查找表顺序表查找☆☆折半查找☆☆索引顺序表查找☆○动态查找表二叉排序树☆○二叉平衡树○○五、实验内容与学时分配周数时数章节实验内容计算机类管理类5 3 线性表顺序表与链表的实现与应用:链表的插入、删除、交换结点、逆序、多项式相加顺序表的实现与应用:插入、删除、查询、输出等6 3 栈和队列栈实现数制转换、表达式求解、汉诺塔;循环队列的实现栈实现数制转换;循环队列的实现7 3 数组和串稀疏矩阵的转置;字符串的朴素搜索和KMP算法稀疏矩阵的转置;字符串的朴素搜索8 3 树与二叉树二叉树的顺序存储和链式存储的实现,生成6个节点的二叉树二叉树的顺序存储和链式存储的实现,生成6个节点的二叉树9 3 树与二叉树链式二叉树的应用:先(中后)序遍历、层次遍历、统计叶节点数目、树深度、左右子树互换链式二叉树的应用:先(中后)序遍历、统计叶节点数目、非叶节点数目、树深度哈希表○○8 排序8基本概念☆☆插入排序直接插入排序☆☆希尔排序☆○选择排序简单选择排序☆☆堆排序☆○交换排序冒泡排序☆☆快速排序☆☆归并排序○※基数排序○※9 文件 2 ○※学时合计6410 3 图图的邻接矩阵实现与应用、统计节点的度;图的邻接矩阵实现、统计节点的度;11 3 图图的邻接表实现,设计深度优先与广度优先遍历算法;最短路径的求法;给定一个图的邻接表实现,设计深度优先与广度优先遍历算法12 3 查找顺序表查找、折半查找、分块索引查找顺序表查找、折半查找13 3 查找二叉排序树、哈希表哈希表14 3 排序基本排序算法、shell排序、堆排序基本排序算法、shell排序六、教材与教学参考书教材:吴海燕等,“数据结构”(C语言版),浙江大学出版社,2011.6。
《数据结构》教学大纲

《数据结构》教学大纲Data Structure课程编号:J6110G0003课程性质:学科基础课程适用专业:计算机科学与技术、网络工程、数字媒体技术先行课:计算机科学导论、离散数学、高级语言程序设计;后续课:无。
学分数:5主讲教师:任燕、王命延、冯豫华、周石林、王玮立等一、课程的目的与任务数据结构是信息与计算科学专业中一门重要的专业基础课程。
当用计算机来解决实际问题时,就要涉及到数据的表示及数据的处理,而数据表示及数据处理正是数据结构课程的主要研究对象,通过这两方面内容的学习,为后续软件方面的课程打下了厚实的知识基础,同时也提供了必要的技能训练。
因此,数据结构课程在计算机应用专业中具有举足轻重的作用。
本课程的目的是使学生掌握数据组织、存储和处理的常用方法,为以后进行软件开发和学习后续专业课程打下基础。
主要任务是讨论现实世界中数据的各种逻辑结构,在计算机中的存储结构以及进行各种非数值运算的算法。
本课程达到《认证通用标准》规定中关于“毕业要求”的第三款项(具有运用工程基础知识和本专业基本理论知识解决问题的能力,具有系统的工程实践学习经历;了解本专业的前沿发展现状和趋势)、第四款项(具备设计和实施工程实验的能力,并能够对实验结果进行分析)。
二、课程的基本要求通过本课程的学习,要求学生了解数据结构及其分类、数据结构与算法的密切关系;熟悉各种基本数据结构及其操作,学会根据实际问题要求来选择数据结构;掌握设计算法的步骤和算法分析方法;掌握数据结构在排序、查找和路由选择等常用算法中的应用。
最后学生应达到知识技能两方面的目标:在基础方面,要求学生掌握常用数据结构的基本概念及其不同的实现方法;在技能方面,通过系统学习能够在不同存储结构上实现不同的运算,并对算法设计的方式和技巧有所体会。
三、课程教学内容第一章绪论基本要求:掌握数据结构的基本概念,抽象数据类型在软件设计中的意义,算法的概念和算法的时间复杂度分析,了解算法的描述和评价。
《数据结构》教学大纲

《数据结构》教学大纲数据结构教学大纲一、课程介绍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实验:通过实验,让学生亲自操作和实验不同的数据结构,加深对数据结构和算法的理解。
软件专业数据结构课程教学大纲

《数据结构》课程教学大纲(适用于计算机软件专业参考学时:56学时)一、课程简介《数据结构》课程是计算机软件专业的一门重要的职业基础课。
在整个教学体系中占据非常重要的地位。
用计算机解决任何应用问题都离不开数据表示和数据处理,使用面向对象技术开发软件,数据表示更成为软件构成的基础。
而数据表示和数据处理的核心问题之一就是数据结构及其操作的实现。
这正是《数据结构》课程的内容。
1、课程性质本课程介绍如何组织各种数据及在计算机中的存储、传递和转换。
内容包括:线性表、链表、栈和队列、数组、串、递归、树与森林、图等。
课程采用C语言描述算法,通过学习本课程,学会编写程序的基本方法。
2、课程的任务在知识方面:从数据结构的定义,以及存储表示和操作的实现两个层次,系统地学习和掌握常用的基本数据结构及其不同的实现,了解并掌握分析、比较和选择不同数据结构、不同存储结构、不同算法的原则和方法,为后续课程的学习打好基础。
在技能方面:系统地学习和掌握在不同的存储结构上实现的算法的设计思想,从中体会和掌握选择结构的方法和算法设计的思考方式及技巧,提高分析问题和解决问题的能力。
二、教学目的(一)知识目标1、掌握顺序存储的线性表的插入、删除、合并等运算。
2、掌握链表的的插入、删除、合并等运算。
2、掌握顺序存储的栈和链栈的的插入、删除等运算。
3、掌握顺序存储的队列和链式队列的的插入、删除等运算。
4、掌握线性表的特例:串和数组。
5、掌握树的存储和二叉树的存储、遍历。
6、掌握图形结构的存储、运算。
(二)能力目标1、学会编写程序的基本方法。
2、提高分析问题和解决问题的能力。
(三)德育目标1、在教学过程中密切联系实际,培养学生的科学精神和创新精神。
2、培养学生上机解决实际问题。
3、培养学生用计算机处理实际问题。
三、教学方法和特点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.队列的应用举例本章习题要点:栈和队列的基本运算的实现第四章串(3学时)(一)教学要求1.掌握串的定义、存储及串的比较、求子串、连接、赋值等基本运算;2.了解基本的串模式匹配算法和KMP匹配算法。
(二)教学重点与难点教学重点:串的定义及基本运算,串的模式匹配算法。
教学难点:KMP模式匹配方法。
(三)教学内容第一节串的基本概念第二节串的存储结构1.串的顺序存储结构——顺序串2.串的链式存储结构——链串第三节串的模式匹配1.Brute Force算法2.KMP算法本章习题要点:第五章数组和广义表(3学时)(一)教学要求1.掌握数组的定义及数组元素的存储方式;2.掌握特殊矩阵的压缩存储及运算;3.了解稀疏矩阵的三元组表、理解以三元组表示稀疏矩阵时进行矩阵运算采用的处理方法;4.了解广义表的定义、存储和基本运算。
(二)教学重点与难点教学重点:多维数组的存储方式、矩阵的压缩存储方式。
教学难点:稀疏矩阵的压缩存储表示下实现的算法。
(三)教学内容第一节数组1.数组的基本概念2.数组的存储结构3.特殊矩阵的压缩存储第二节稀疏矩阵1.稀疏矩阵的三元组表示2.稀疏矩阵的十字链表表示第三节广义表1.广义表的定义2.广义表的存储结构3.广义表的运算本章习题要点:特殊矩阵的压缩存储及运算第六章树(10学时)(一)教学要求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.哈夫曼编码本章习题要点:二叉树的先序、中序、后序、层序遍历过程及相应的遍历算法;第七章图(10学时)(一)教学要求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.哈希冲突解决方法本章习题要点:各种查找的实现方法。
第九章排序(8学时)教学重点:基本插入排序和希尔排序算法,冒泡排序和快速排序算法,简单选择排序和堆排序算法,归并排序算法,各种排序算法的时间、空间效率分析教学难点:多重循环希尔排序算法、快速排序算法、堆排序算法和归并排序算法(一)教学要求1.掌握基本的插入排序算法、改进算法(希尔排序算法)及算法效率分析;2.掌握冒泡排序、快速排序算法及算法效率分析;3.掌握简单选择排序、堆排序算法及算法效率分析;4.掌握归并排序算法及算法效率分析,了解基数排序方法。
(二)教学重点与难点教学重点:基本插入排序和希尔排序算法,冒泡排序和快速排序算法,简单选择排序和堆排序算法,归并排序算法,各种排序算法的时间、空间效率分析教学难点:多重循环希尔排序算法、快速排序算法、堆排序算法和归并排序算法(三)教学内容第一节排序的基本概念第二节插入排序1.直接插入排序2.希尔排序第三节交换排序1.冒泡排序2.快速排序第四节选择排序1.直接选择排序2.堆排序第五节归并排序第六节基数排序本章习题要点:各种排序的实现方法。
五、教学方法或手段1、教学方法,采用讲授法与自学辅导式相结合的教学方法。
2、教学手段,采用多媒体教学手段。
六、考核方式及评价要求本课程是计算机科学与技术专业基础课,以笔试方式为主进行考试,考试内容应体现教学大纲的基本要求,笔试成绩占60%,上机实验占20%,平时成绩占20%。
七、教材及教学主要参考书推荐教材:《数据结构教程》,李春葆主编,清华大学出版社,2013年6月第4版。
《数据结构》,严蔚敏主编,清华大学出版社,2012年7月第5版。