数据结构(C语言版)整体教学设计_第1页
数据结构(C语言版)整体教学设计_第2页
数据结构(C语言版)整体教学设计_第3页
数据结构(C语言版)整体教学设计_第4页
数据结构(C语言版)整体教学设计_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

《数据结构》课程整体设计

课程代码KC002课程性质C'业基础课总学时76

适用专业软件技术及相关专业教学方式线上线下混合教学

学校淮安信息职业技术学院

制定软件技术专业

制定日期审核部门

单位2017.7.20资源库建设项目组

企业淮安远景科技有限公司

一、课程设计思路

依据课程标准,以软件技术专业学生的就业岗位群能力目标为导向,以数据结构与算法为主线,把整

个课程分成知识技能篇和技术应用篇,培养学生具有数据抽象能力和复杂程序设计能力,为今后软件开发

设计打下坚实基础。

二、课程目标设计

课程定位在培养学生的数据抽象能力和复杂程序设计的能力为总目标。通过对本课程的学习,使学生

掌握各种常用数据的逻辑结构、存储表示、基本操作及算法设计,学会分析计算机加工的数据对象的特性,

以便选择合适的数据逻辑结构、存贮结构及相应的基本处理算法;初步掌握算法的时间和空间复杂度分析

技术,培养学生数据抽象能力和复杂程序设计能力,为今后软件开发设计打下坚实基础。

(-)知识目标

1.了解数据逻辑结构和存储结构,能选择适当的数据结构解决实际问题;

2.掌握顺序表、链表、栈与队列等线性表的基本操作及特点;

3.理解树与图的存储方法及简单应用;

4.掌握各种查找方法算法与使用的场合;

5.掌握各种排序方法算法与使用的场合。

6.掌握文件的读/写操作,能使用文件对数据进行处理,解决批量输入输出的实际问题。

(-)职业能力目标

1.能用线性表知识解决数据的存储、插入和删除等操作;

2.能用栈和队列的知识解决实际生活中类似线性结构操作;

3.能用树与图的知识解决实际生活中的非线性结构操作;

4.能够根据数据的存储结构选择适合的查找算法;

5.能够根据场合选择适合的排序算法。

6.能够分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储

结构及相应的算法,并初步了解对算法的时间分析和空间分析技术。

7.通过对本课程算法设计和上机实践的训练,培养学生的数据抽象能力和复杂程序设计的能力。

(三)职业素质养成目标

1.培养学生良好的协调和沟通能力;

2.培养学生勇于创新和严谨细致的工作作风;

3.培养学生良好的职业道德和团队合作精神;

4.培养学生善于收集信息和良好的自学能力;

5.培养学生理论联系实际,善于发现问题并积极寻求解决问题方法的能力。

(四)其他目标

通过本课程的学习,可以达到以下目标:

1.通过全国计算机等级二级考试、三级考试;

2.通过程序员等各类认证考试;

3、通过专接本和专转本考试。

三、课程内容设计

根据课程标准,将教学内容分为知识技能篇和技术应用篇。

知识技能篇分为绪论、线性表、栈和队列、串、数组和广义表、树、图、查找、排序和文件10个单

元,并配有9个实验项目。通过本篇的学习,使学生循序渐进的掌握各类数据结构,掌握数据结构应用思

想,达到具有分析问题、利用数据结构解决实际问题的能力。

技术应用篇完成2个模块单元:新生报到信息注册系统设计、万达停车场管理系统设计。通过对本篇

的学习,使学生循序渐进地掌握结构化程序设计的思想,掌握各类数据结构的使用,达到具有分析问题、

编程解决实际问题的能力。具体内容设计如下:

(-)课程内容总体设计

篇名单元单元名称参考学时

单元1绪论及C语言介绍4

单元2线性表的结构分析与应用8

知识技能篇

单元3栈和队列的结构分析与应用8

单元4字符串的结构分析与应用4

单元5二维数组及广义表的结构分析与应用4

单元6树和二叉树的结构分析与应用10

单元7图的结构分析与应用10

单元8查找的分析与应用6

单元9排序的分析与应用8

单元10文件2

模块项目名称参考学时

技术应用篇模块1新生报到信息注册系统设计6

模块2万达停车场管理系统设计6

(-)课程内容详细设计

1.知识技能篇详细设计

篇学时

单元名称单元内容知识目标

名安排

(1)理解数据结构的基本概念;

数据结构基本概念(2)掌握逻辑结构、物理结构的概念及相互关1

系;

算法概念及特性1

单元1:(3)掌握四种基本结构的特点;

绪论及C语(4)理解算法及其特性;

(5)了解算法分析的一般概念;

言介绍C语言知识介绍2

(6)巩固C语言基本结构、函数、指针、结构

体等知识。

小计4

技(1)理解线性表的定义及两种存储结构;

线性表概念1

能(2)理解线性表顺序存储的特点、实现方法和

篇应用1;

单元2:

顺序表基本及操作(3)掌握顺序表的基本操作;3

线性表的结(4)掌握链表的基本操作(包括建立链表、遍

构分析与应历链表、删除、插入、查找)和应用;

用链表基本及操作(5)了解双向链表、循环链表的原理和相关操4

作。

小计8

单元3:栈、队概念(1)掌握栈和队列的操作特点;2

栈和队列的顺序栈和链栈的基本操(2)理解顺序栈、顺序队列的基本操作;

2

结构分析与作(3)了解在实际编程中栈和队列的不同应用;

应用(4)理解循环队列的概念、实现方法。掌握循

顺序队列和链队列的基

环队列判空、判满的条件;4

本操作

小计8

串的基本概念1

单元4:(1)理解串的定义和存储方法;

字符串的结(2)了解串的基本操作和相关算法;

串的存储、基本操作3

构分析与应(3)掌握用C语言处理字符串的语法规则。

小计4

(1)了解数组的存储结构;

数组概念、存储结构1

单元5:(2)掌握特殊矩阵进行压缩存储的下标转换公

二维数组和式;

特殊矩阵1

广义表的结(3)理解稀疏矩阵的压缩存储原理;

构分析与应(4)掌握利用三元组表示稀疏矩阵的方法;

广义表概念、存储结构2

用(5)了解广义表的概念和存储结构。

小计4

树和二叉树的定义1

(1)了解树和二叉树的定义;

(2)掌握二叉树的基本性质,能利用相关性质

二叉树的基本性质1

解决简单计算问题;

二叉树的存储结构(3)了解二叉树的顺序存储结构;2

单元6:(4)掌握二叉树的链式存储结构、相关操作;

树的结构分二叉树的遍历算法及实(5)掌握二叉树的遍历算法并能编程实现;

2

析与应用现(6)掌握树的存储方法;

(7)掌握哈夫曼树的定义、性质和构造方法:

树的存储结构2

(8)了解哈夫曼树的应用。

哈夫曼树概念及应用2

小计10

图的基本概念(1)了解图的基本概念;2

(2)掌握图的存储方法(邻接矩阵、邻接表);

图的存储结构2

(3)掌握图的深度优先和广度优先遍历的规则

单元7:图的遍历和步骤;2

图的结构分(4)理解在连通图中求最小生成树的方法:

最小生成树2

析与应用(5)了解求图的最短路径等相关算法及其应

最短路径用。2

小计10

单元8:(1)了解查找的相关概念;

查找的相关概念1

查找的分析(2)掌握顺序表的查找方法、步骤、程序实现、

与应用时间复杂度和平均查找长度;

顺序查找(3)掌握在有序的顺序表上进行折半查找的方1

法、步骤、程序实现;

(4)掌握折半查找的判定树的构造方法;

折半查找(5)掌握二叉排序树的确切定义;1

(6)掌握建立二叉排序树的步骤和方法;

(7)理解在二叉排序树中进行输入、删除操作

索引查找的规则;1

(8)了解哈希表的相关概念和原理;

(9)了解常用哈希函数的构造和处理冲突的方

法;

哈希查找2

(10)掌握哈希函数和哈希表的关系及在查找中

的应用。

小计6

排序的基本概念(1)掌握教材中介绍的各种排序算法的基本原1

理、步骤;

插入排序(2)掌握相关排序算法的规则人工完成排序;1

能通过分析排序的中间结果判断所用的排

交换排序2

单元9:序算法;

排序的分析(3)能正确理解相关排序算法的程序实例,并

选择排序2

与应用重点掌握算法中的关键步骤和关键语句;

(4)掌握堆和特殊的完全二叉树的对应关系;

归并排序(5)掌握建堆、“筛选”完全二叉树相关操作的1

方法。

各种排序方法比较1

小计8

(1)掌握文件概念;

文件的概念与分类(2)掌握顺序文件操作方法;1

单兀10:(3)掌握索引文件操作方法;

文件各类文件的操作(4)掌握各类文件的数据读写方法;1

(5)了解多关键字文件。

小计2

合计64

2.技术应用篇详细设计

模块名称子模块名称知识目标学时安排

(1)掌握线性表的顺序存储结构;

技案例需求分析1

(2)掌握查找方法中的顺序查找;

模块1:案例知识储备1

术(3)通过该案例可以巩固C语言程序

新生报到信息注

设计三大结构的使用;

应册系统设计

案例核心算法及实现(4)掌握结构体定义方法,该案例应4

用用到结构体的知识。

篇小计6

案例需求分析(1)掌握栈和队列的存储结构,考虑1

到功能易于实现,该案例中栈以顺序

案例知识储备1

模块2:结构实现,队列以链表结构实现;

万达停车场管理(2)掌握结构体定义方法,该案例应

案例核心算法及实现4

系统设计用到结构体的知识。

小计6

合计12

四、能力训练设计

1.知识技能篇能力训练设计

单元/模块结果

序号能力目标能力描述训练方式

名称(可展示)

单元1:

(1)能够编写简单的C程序;

1绪论及C语具备计算算法能力。讲练结合程序代码

(2)能够进行简单的算法评价。

言介绍

单元2:具备构建顺序表、链(1)能够定义并实现顺序表;

线性表的结表,并对顺序表、链(2)能够实现顺序表常用操作;

2讲练结合程序代码

构分析与应表进行添加与删除(3)能够定义并实现链表;

用等简单应用的能力。(4)能够实现链表常用操作。

具备构建栈、队列,

单元3:(1)能够定义并实现栈;

并利用顺序和链表

栈与队列的(2)能够实现栈常用操作;

3对栈、队列进行添加讲练结合程序代码

结构分析与(3)能够定义并实现队列;

与删除等简单应用

应用(4)能够实现队列常用操作。

的能力。

单元4:

具有解决串操作应

字符串的结(1)能够定义并实现串;

4用问题程序设计能讲练结合程序代码

构分析与应(2)能够使用串的各种函数。

力。

(1)能够定义多维数组;

单元5:(2)能够利用特殊矩阵进行压

具备运用数组处理

二维数组与缩存储的下标转换公式;

数据,并对数据进行

5广义表的结(3)能够用三元组实现稀疏矩讲练结合程序代码

增、册h改、查的操

构分析与应阵;

作的能力。

用(4)能够用广义表实现各种操

作。

(1)能够定义并实现二叉树的

存储实现;

单元6:具有运用树、二叉树(2)能够进行二叉树的遍历算

6树的结构分操作解决应用问题法设计;讲练结合程序代码

析与应用的能力。(3)实现二叉树的有关算法并

能编程实现;

(4)实现哈夫曼树的应用。

(1)能够定义并实现图的存储

结构;

(2)能够实现图的深度优先和

单元7:

具有运用图操作解广度优先遍历;

7图的结构分讲练结合程序代码

决应用问题的能力。(3)能够实现图中求最小生成

析与应用

树;

(4)能够进行两点之间最短路

径算法设计。

(1)能够定义并实现顺序查找;

单元8具有运用四种查找

(2)能够定义并实现二分查找;

8查找的分析方法操作解决应用讲练结合程序代码

(3)能够定义并实现索引查找;

与应用问题的能力。

(4)能够定义并实现哈希查找。

(1)能够定义并实现插入排序;

单元9:具有运用四大类、七

(2)能够定义并实现交换排序;

9排序的分析种排序方法操作解讲练结合程序代码

(3)能够定义并实现选择排序;

与应用决应用问题的能力。

(4)能够定义并实现归并排序;

具有综合运用所学

单元10:(1)能够定义文件类型;

10文件知识进行应用讲练结合程序代码

文件(2)能够实现各类文件的操作。

程序的能力。

2.技术应用篇能力训练设计

单元模块结果

序号能力目标能力描述训练方式

名称(可展示)

具备利用顺序表和查能够利用顺序表存储数据

模块1:

找的各类方法和处理能够利用顺序查查找数据

1新生报到信息实践操作程序代码

数据,并能编写程序能够利用C语言编写程序

注册系统设计

实现功能的能力。能够利用结构体知识。

能够利用顺序栈存储、查找、

模块2:具备利用栈和队列存

插入和删除数据

2万达停车场管储数据,并能实现各实践操作程序代码

能够利用链队列存储、查找、

理系统设计类操作的能力。

插入和删除数据

五、考核评价设计

本课程考核采用形成性考核方式,总评成绩由形成性考核的各项成绩组成,全面考核学生的动手能力、

基础理论

温馨提示

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

最新文档

评论

0/150

提交评论