《数据结构》课程标准_第1页
《数据结构》课程标准_第2页
《数据结构》课程标准_第3页
《数据结构》课程标准_第4页
《数据结构》课程标准_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《数据结构》课程标准学时:72学时(其中:讲课学时:36上机学时:36)先修课程:高等数学、C语言程序设计后续课程:软件开发相关的应用性课程(Android应用开发、软件工程等)适用专业:软件技术、移动应用开发、软件与信息服务等开课部门:信息工程与大数据学院一、课程的性质《数据结构》是面向软件技术相关专业的一门专业基础课,课程要求:熟练掌握线性表、栈和队的存储结构及基本操作,并能在相应的应用中正确地选用,培养学生用链式结构编写程序的能力;了解串和广义表的定义和存储结构;掌握数组的存储结构,熟悉稀疏矩阵的两种压缩存储方法的特点及适用范围;了解树的存储结构及特点,掌握二叉树和图的存储结构及其相应算法,培养学生用非线性结构解决实际问题的能力;掌握各种查找、排序方法,培养学生灵活应用已有排序方法的能力,开拓思路编写新的排序算法。二、课程设计理念数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。精心选择的数据结构可以带来更高的运行或存储效率,数据结构往往同高兴的检索算法和索引技术有关。1、课程地位理念在许多类型的程序设计中,数据结构的选择是一个基本的设计考虑因素。许多大型的构造经验表明,系统实现的困难程度和系统构造的质量都严重的依赖于是否选择了最优的数据结构。许多时候,确定了数据结构后,算法就容易得到了。有些时候事情也会反过来,我们根据特定算法来选择数据结构与之适应。不论哪种情况,选择合适的数据结构都是非常重要的。选择了数据结构,算法随之确定,是数据而不是算法是系统构造的关键因素。2、课程学情理念本课程开设在嵌入式系统工程专科第一学期,学生在学习本课程前已具备计算机基础、C语言基础等知识,本课程力图让学生学会在C语言环境下,运用面向对象的思想编写规范的代码,实现经典的数据结构和算法。熟悉常用的数据结构和算法,使学生初步具备一个优秀的软件开发人员所应有的基本能力。3、课程内容理念根据本课程的教学目标,确定了课程内容体系结构的五个组成部分:集合结构、线性表、堆栈和队列、树和二叉树、查找和排序。内容主要包括:绪论、线性表、有序线性表、堆栈、队列、树、二叉树、二叉树的遍历、顺序查找、折半查找、插入排序、选择排序等。4、课程要求理念《数据结构》是一门偏重理论的课程,有很强的理论性。在多年的教学研究和教学实践中,《数据结构》形成了独具特色的“七化”教学方法,即教学资源立体化、教师精讲主导化、学生学习团队化、教学过程流水化、程序项目核心化、知识技能点索引化、和C语言结合化。5、课程考核理念如何客观反映出学生对数据结构的理解、掌握、综合应用的实际情况,传统的闭卷考试有不完善的地方,应该对考核内容和形式进行适当的调整,过程评价与终结评价相结合,形成全方位、更加公正客观的评价体系。考核方法采用“N+2”成绩评定方式,采用“课堂考勤+课堂实训练习+期末考试”的方式。三、课程目标(一)总目标本课程以培养学生的数据抽象能力和复杂程序设计的能力为总目标。通过本课程的学习,学生可以学会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构及其相应的运算,并初步掌握算法的时间分析和空间分析的技术;另一方面,本课程的学习过程也是复杂程序设计的训练过程,要求学生编写的程序结构清楚和正确易读,符合软件工程的规范。(二)具体目标1.知识目标(1)掌握各种主要数据结构的特点、计算机内的表示方法,以及处理数据的算法实现。(2)使学生学会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构及相应的算法,并初步了解对算法的时间分析和空间分析技术。(3)通过对本课程算法设计和上机实践的训练,培养学生的数据抽象能力和复杂程序设计的能力。2.能力目标(1)有初步的算法分析和设计能力。(2)能够有效地获取、利用、传递信息。(3)通过独立学习,不断获取新的知识和技能,能够在工作中寻求发现问题、解决问题的途径。3.素质目标(1)培养学生“爱岗、敬业、细致、求精”的职业道德与情感。(2)培养学生良好的动手实践习惯,尤其注重挖掘学生的潜质。(3)注重培养学生与社会接轨。(4)培养学生严谨的行事风格。4.培养目标系统地学习和掌握基本数据结构及其不同算法的实现,掌握分析、比较和选择不同数据结构和不同存储结构,为后续课程的学习打好基础;掌握在不同存储结构上实现的不同算法及其设计思想。体会并掌握结构选择和算法设计的思想模式及技巧,进一步提高学生的程序设计水平和解决实际问题的能力。四、课程设计思路本课程标准从计算机软件技术及应用技术专业的视角出发,以满足本专业就业岗位所必须具备的计算机软件技术基础知识为基础,教学内容设计通过岗位工作目标与任务分析,分解完成工作任务所必备的知识和能力,采用并列和流程相结合的教学结构,构建教学内容的任务和达到工作任务要求而组建的各项目,以及教学要求和参考教学课时数。通过实践操作、案例分析,培养学生的综合职业能力,基本达到程序员级职业技能鉴定标准。五、课程的主要内容及基本要求第一章绪论主要内容:什么是数据结构、数据结构的基本概念和术语、抽象数据类型的定义、表示和实现方法;描述算法的类C语言;算法设计的基本要求以及从时间和空间角度分析算法的方法。教学重点:各名词、术语的含义、基本概念;数据的逻辑结构和存储结构之间的关系。教学难点:算法的时间复杂度及其分析。教学要求:理解数据、数据元素、数据项的概念及其相互关系;了解抽象数据类型的定义、表示和实现方法;理解存储结构与逻辑结构的关系;了解四种基本存储方式;理解算法的概念并初步掌握类C语言;了解算法分析的基本概念、时间复杂度及其量级的概念。第二章线性表主要内容:线性表的逻辑结构定义、抽象数据类型定义和各种存储结构的描述方法;在线性表的两类存储结构(顺序的和链式的)上实现基本操作;一元多项式的表示及其相加。教学重点:线性表的有关概念,线性表的两类存储结构(即顺序表和链表)的表示及其运算的实现,能根据具体问题的要求设计合理的数据结构和算法。教学难点:指针、链表和顺序表的概念及表示,有关链表结构的基本操作、算法设计和灵活运用。教学要求:熟练掌握两类存储结构的描述方法,链表中的头结点、头指针和首元结点的区别及循环链表、双向链表的特点等。熟练掌握线性表在顺序存储结构上实现基本操作(查找、插入、删除)的算法;熟练掌握在各种链表结构中实现线性表操作的基本方法,能在实际应用中选用适当的链表结构。能够了解静态链表,加深对链表本质的理解。能够从时间和空间复杂度的角度综合比较线性表存储结构的不同特点及其使用场合。第三章栈和队列主要内容:栈和队列的结构特点,在两种存储结构上如何实现栈和队列的基本操作以及栈和队列在程序设计中的应用。教学重点:栈和队列的特点,基于顺序栈、链栈、循环队列和链队列上的基本运算的实现和简单算法设计。教学难点:循环队列的组成及在该结构上判断队满和队空的条件。教学要求:掌握栈和队列这两种抽象数据类型的特点,并能在相应的应用中正确选用它们;熟练掌握栈类型的两种实现方法,栈满和栈空的条件以及它们的描述方法;熟练掌握循环队列和链队列的基本操作、实现算法以及队满和队空的条件描述方法。串(补充)主要内容:串的数据类型定义;串的三种存储结构表示;串的各种基本操作的实现及应用。教学重点:串的定义及三种存储结构表示,串的五种基本操作,并能根据五种基本操作实现串的其它各种操作。教学难点:堆分配存储表示及算法。教学要求:熟悉串的五种基本操作的定义,并利用这些基本操作实现串的其它各种操作的方法;熟悉在串的定长顺序存储结构上实现串的各种操作的方法;掌握串的堆存储结构以及在其上实现串的各种操作的方法。数组和广义表(补充)主要内容:数组的类型定义和表示方式;特殊矩阵和稀疏矩阵的压缩存储方法及运算的实现;广义表的定义及其存储结构。教学重点:数组的两种存储结构及其地址计算方法,特殊矩阵进行压缩存储时的下标变换公式,稀疏矩阵的两种压缩存储方法,利用稀疏矩阵进行矩阵运算时采用的处理方法。教学难点:行逻辑链接的顺序表的矩阵运算,稀疏矩阵的十字链表存储表示。教学要求:了解数组的两种存储表示方法,并掌握数组在以行为主的存储结构中的地址计算方法;掌握对特殊矩阵进行压缩存储时的下标变换公式;熟悉稀疏矩阵的两种压缩存储方法的特点及适用范围,熟悉三元组表示稀疏矩阵进行矩阵运算采用的处理方法;了解广义表的结构特点及其存储表示方法。第四章树和二叉树主要内容:二叉树的定义、性质和存储结构;二叉树的遍历和线索化以及遍历算法的各种描述形式;树和森林的定义、存储结构与二叉树的转换、遍历;树的应用。教学重点:树型结构的概念,二叉树、满二叉树、完全二叉树的定义和性质,二叉树的存储结构及其三种遍历算法,树的存储结构和它与二叉树之间的相互转换;最优树的构造和哈夫曼编码。教学难点:遍历二叉树的递归算法,线索二叉树。教学要求:熟练掌握二叉树的结构特性,了解相应的证明方法;熟悉二叉树的各种存储结构的特点及适用范围;熟练掌握二叉树遍历算法,并能灵活运用遍历算法实现二叉树的其他操作;理解二叉树线索的实质;熟练掌握二叉树的线索化过程;熟悉树的各种存储结构及其特点,掌握树和森林与二叉树的转换方法;了解最优树的特性,掌握建立最优树和哈夫曼编码的方法。第五章图主要内容:图的定义和术语;图的四种存储结构;数组表示法、邻接表、十字链表和邻接多重表;图的两种遍历;图的连通性;连通分量和最小生成树;拓扑排序和关键路径;两类求最短路径问题的算法。教学重点:图的有关概念;图的两种存储结构(邻接矩阵和邻接表);图的两种遍历算法;最小生成树的构造;拓扑排序。教学难点:关键路径的概念,最短路径及其算法的实现。教学要求:理解图的概念并熟悉有关术语,熟练掌握图的两种存储结构(邻接矩阵和邻接表),熟悉图的各种存储结构及其构造算法,熟练掌握图的两种搜索路径遍历的基本思想和算法,了解拓扑排序的概念和算法,熟悉求关键路径和两类求最短路径问题的基本思想。第六章查找主要内容:讨论查找表(动态查找表和静态查找表)的各种实现方法;关于衡量查找表的主要操作——平均查找长度的讨论。教学重点:顺序表、有序表、二叉排序树和哈希表。教学难点:平均查找长度的分析;二叉排序树的删除操作;平衡二叉树的平衡方法。教学要求:熟练掌握顺序表和有序表的查找方法;熟练掌握二叉排序树的构造和查找方法;熟悉二叉平衡树的维护平衡方法;了解B—树的特点;熟练掌握哈希表的构造方法;掌握描述查找过程的判定树的构造方法;以及按定义计算各种查找方法在等概率情况下查找成功时的平均查找长度。第七章排序主要内容:讨论比较各种内部排序方法:插入排序、交换排序、选择排序、归并排序和基数排序的基本思想,算法特点、排序过程以及它们的时间复杂度分析。教学重点:希尔排序、快速排序、堆排序和归并排序。教学难点:快速排序和堆排序以及分析排序算法的平均情况和最坏情况的时间性能。教学要求:深刻理解排序的定义和各种排序方法的特点,并能灵活的应用。了解各种方法的排序过程及其依据原则;掌握各种排序方法的时间复杂度的分析方法;理解排序方法稳定或不稳定的含义;了解表排序和地址排序的过程及其适用场合。六、考核模式与成绩评定办法本课程为考试课程,期末考试采用百分制的闭卷考试模式。学生的考试成绩由平时成绩(40%)和期末考试(60%)组成,其中,平时成绩包括出勤(10%)、作业(10%)、实验和上机成绩(20%)。七、选用教材和主要参考书本大纲是根据教材《数据结构》所设计的。教材:1李学刚,数据结构(C语言描述),高等教育出版社,2013.5参考文献(含参考书、有关资料出处、相关课程网站网址等):1严蔚敏,吴伟民,米宁编著·数据结构题集·C语言版,北京,清华大学出版社,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论