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

下载本文档

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

文档简介

课程标准

【课程名称】数据结构

【课程代码】

【适合专业】

【计划学时】

【课程负责人】

【参与编审人】

(校内)

(校外)

信息系(部)软件教研室制订(修订)

二0二一年十二月

《数据结构》课程标准

一、课程基本信息

课程代码课程类型

课程性质开设学期

学时学分

适用对象

合作企业

先修课程后续课程

制定人批准人

二、课程定位

《数据结构》课程是软件网站建设专业的一门专业基础课,属于专业必修课。本课程包括24学时的理论教学和18学时的实践教学,

在校内完成。

《数据结构》课程面向企业的编程开发人员,基于逻辑结构、存储结构和基本运算算法等典型工作任务进行分析后,归纳总结出其

所需求的模型设计、算法选择、程序编写等职业能力要求而设置的课程。

三、课程目标

(-)总体目标

通过本课程的学习,使学生掌握线性表、栈和队列、串、数组和稀疏矩阵、树和二叉树等知识和数据组织、数据存储和数据处理等

技能,同时通过工作任务式(项目化)学习提升程序设计、程序编写等方面关键能力,从而使学生形成软件网站建设方面的职业素质。

(二)具体目标

1.知识目标

1)数据结构的基本概念及算法的评价。

2)能熟练使用基本的数据结构,线性表、数、图结构。

3)查找技术。

4)排序算法。

5)能用数据结构设计解决简单实际问题的程序,并能完成简单程序的测试。

6)能根据问题设计相应的算法

2能力目标

1)数据结构概述

①数据结构概念;

②算法的评价;

③算法时间复杂度的计算。

2)线性表

①了解线性表的意义;

②线性表的顺序实现;

③线性表的顺序结构的增删改查;

④线性表的链接实现;

⑤线性表的应用。

3)特殊的线性表

①栈的意义及实现;

②队列的意义及实现;

③栈与队列的应用;

④字符串的操作。

4)数结构

①了解树结构的基本概念;

②二叉树的基本性质;

③二叉树的存储及遍历

④霍夫曼编码。

5)图结构

①了解图结构的基本概念;

②图结构的存储及遍历;

③最小生成树算法;

④最短路径算法;

⑤关键路径算法及实现。

6)查找技术

①了解查找的相关概念;

②折半查找的算法实现;

③二叉排序树查找;

④散列表查找技术。

7)排序技术

①了解排序技术的基本概念;

②插入排序;

③交换排序;

④选择排序;

⑤归并排序。

3.素质目标

1)具有良好的思想品德和诚实、敬业、负责等职业道德;

2)具有良好的文化修养;

3)具有良好的团结协作精神、团队意识、组织协调能力;

4)具有开拓创新精神;

5)具有理解原理,掌握方法,熟练应用,能够创造性地应用各种数据结构和算法,设计性能优,效率高,可读性强,易维护的程序,

解决实际问题,提高学生的学习能力,探索研究的能力。

四、设计思路

本课程基于合作企业的真实案例和典型工作任务,可以兼顾学生职业生涯发展需要。采用基于工作过程进行课程开发,整门课程分

为线性表、树等9个教学单元,按照逻辑顺序,遵循从基础到复杂活动规律,突破了学科课程的设计思路,构建以任务为导向的课程教

学内容,培养了学生发现问题、分析问题、解决问题的能力。本课程采用线上线下混合式教学模式,引入日常生活内容作为例子,通过

编程,解决实际生活中的问题,增强课程内容与职业岗位能力要求的相关性。同时将思想政治教育和岗位技能积累有机统一,实施理论

与实践一体化教学,让学生做中学、学中做,提高综合职业能力,养成良好的职业素养。

五、教学内容

根据技术开发职业岗位的要求,将本课程的教学内容分解为9个教学情境(或单元、模块)学时分配如表1。

表1学时分配如

模块子项目理论实践

序号主要教学知识点学习目标

名称内容学时学时

知识目标:

1.数据结构概念;2.

1.1数据

1-1什么是数据结构算法的评价;3.算法时20

结构概念

间复杂度的计算。

技能目标:

数据1.会评价一个算法的好

1.2算法1-5算法及其描述

1结构坏。2.算法时间复杂度21

的评价语言简介

概述1-6的计算。

态度目标:

1-7算法分析:

1.3算法1.培养学生独立解决问

①算法时间复杂度分析;

时间复杂题的能力以及与团队协21

②算法空间复杂度分析

度的计算作的能力。2.培养学生

数据结构的目标

1-8良好的劳动纪律

知识目标:

1.了解线性表的意义;

线性2-1线性表的定义

2.1线性2.线性表的顺序实现;

2表2-2线性表的顺序存储结22

表定义3.线性表的顺序结构的

增删改查;

4.线性表的链接实现;

5.线性表的应用。

2.2链式2-5线性表的链式存储结技能目标:

22

存储结构构1.线性表的顺序结构实

现;

2.线性表的链接结构实

3.线性表的应用。

态度目标:

2.3线性2-7顺序表和链表的比较

1.树立认真学习的态22

表的应用2-8线性表的应用度,培养对工作认真负

责的态度。

2.树立克服困难的自信

心。

3-1栈的定义;

3-2顺序栈及其实现;

3-3顺序栈的应用算法设

3.1栈计示例;知识目标:

3-4链栈及其实现;1.栈、队列的定义和概

3-5链栈的应用算法设计念;2.栈、队列的应用;

示例3.算法时间复杂度的计

3-6队列的定义;算。

3-7顺序队及其实现;技能目标:

3栈和3-8顺序队的应用算法设1.能简单使用栈和队2

队列3.2队列计示例;列。

3-9链队及其实现;态度目标:

3-10链队的应用算法设1.培养学生独立解决问

计示例题的能力以及与团队协

作的能力。2.培养学生

3.3队列良好的劳动纪律

3-11队列的综合应用

的综合应

3-12优先队列(堆)

4串数4.1串4-1串的定义;知识目标:22

组和4-2串的存储结构一顺序1.串、数组、递归的定

递归串和链串;义和概念;2.串、数组、

4-3串的模式匹配(BF递归的应用;3.算法时

算法和KMP算法);间复杂度的计算。

4-4数组的基本概念;技能目标:

4-5特殊矩阵的压缩存1.能简单使用串、数

4.2数组

储;组、递归

4-6稀疏矩阵;2.态度目标:

4-9递归的定义;1.培养学生独立解决问

4-10何时使用递归题的能力以及与团队协

4.3递归

4-11递归模型作的能力。2.培养学生

4-12递归的执行过程良好的劳动纪律

5-1树:

①树的定义和逻辑表示;

②树的基本术语;③树的

知识目标:

性质;④树的基本运算;

1.了解树结构的基本概

⑤树的存储结构

念;

5-2二叉树:

2.二叉树的基本性质;

①二叉树的概念;②二叉

3.二叉树的存储及遍

树的性质;③二叉树存储

历;

结构;④二叉树的递归算

4.霍夫曼编码。

法设计;⑤二叉树的基本

技能目标:

5树5.1树运算及其实现44

1.会使用树结构类型。

5-3二叉树先序、中序和

2.使用树结构解决实际

后序遍历:

问题。态度目标:

①二叉树遍历的概念;②

1.树立认真学习的态

先序、中序和后序遍历递

度,培养对工作认真负

归算法;③递归遍历算法

责的态度。

的应用;④先序、中序和

2.树立克服困难的自信

后序遍历非递归算法

5-4二叉树的层次遍历:

①层次遍历过程;②层次

遍历算法设计;③层次遍

历算法的应用

5-5二叉树的构造

5-6线索二叉树

5-7哈夫曼树

5-8二叉树与树、森林之

间的转换

5-9并查集

知识目标:

1.了解排序技术的基本

概念;2.插入排序;

6-1排序的基本概念3.交换排序;4.选择排

6-2插入排序:①直接插序;5.归并排序。

入排序;②折半插入排技能目标:

序;③希尔排序1.能实现排序算法。

6-3交换排序:①冒泡排2.能写出排序过程。

序;②快速排序3.排序算法的比较与改

6-4选择排序:简单选择进。

排序;②堆排序态度目标:

6排序6.1排序44

6-5归并排序:①自底向1.通过标准开发过程和

上的二路归并排序;②自规范化的程序设计训

顶向下的二路归并排序练,培养学生细致认真,

6-6基数排序各种内排序一丝不苟的工作作风。

方法的比较和选择2通.过分组协作,培养学

6-7外排序:①生成初始生团队合作和与人交

归并段的方法;②多路归流、沟通的能力3.通过

并方法项目实施中的展示和设

计,培养学生表达和展

示自我能力的意

合计2418

五、教学实施

(一)师资条件

1.本课程校内任课教师应通过本科以上相关专业的学习,并具备相关教师资格证书,同时还应有两年相关岗位企业实践经历。

2.企业兼职教师应具备工程师等级以上职称证书,具有中型以上项目开发经验,语言表达能力达到要求。

3.掌握高职教育规律,了解高职学生的特点,熟悉编程语言实验室等教学环境并掌握本课程所需设备的操作规程,熟悉程序设计语

言方面的知识和技能。

(-)教学方法和实施条件建议

本课程主要应用项目教学法、引导文教学法、案例分析法、讲授法、互动教学法、现场教学法等多种行动导向教学法,以实践技能

操作为主,实施引导式教学,形成“以学生为主体,以教师为主导,以活动项目为载体”的教学思路,采用边讲边练、分组教学的方式

进行,以工作任务为引领,提高学生学习兴趣,激发学生的学习动机。

本课程建议配备的硬件有电脑,软件有职教云等设备。

六、课程考核方式与评价标准(

本课程采用全过程、多方位的考核模式,专业技能与工作作风相结合,形成性评价与终结性评价相结合的多元评价形式。综合评价

时,注重学生学习过程的考评,采取小组评价和教师评价相结合的评价方式进行考评。

总成绩=形成性评价(60%)+终结性评价(40Q

形成性评价包括平时的学习态度、纪律、出勤、作业和平时实践情况,终结性评价包括期末考试。具体见表3。

《数据结构》课程考核知识点和分值分配见表2,成绩综合评定标准见表3所示,实训成绩评定标准见表4。

表2《数据结构》课程的考核知识点及分值

项目(或单子项目(或

元或模块或子教学情分

学习单元考核点

章等)境、或工作值

名称任务)内容

1.1数据结

构概念1、了解和掌握数

1.2算法的据结构的基本概

什么是数据结构

评价1.1

1.3算法时1.2算法及其描述5

间复杂度2、基础语言的使

1.3语言简介

的计算用

1.1数据结

构概念

数据结构概

1.2算法的

评价

1.3算法时1、会评价一个算

1.4算法分析:

间复杂度法的好坏

①算法时间复杂度分析;②算法空间复

的计算杂度分析2、会计算算法时5

1.1数据结1.5数据结构的目标间复杂度的

构概念3、会评价算法

1.2算法的

评价

合计10

线性表的定义

线性表的顺序存储结构:

①顺序表以及线性表基本运算算法在顺

1.了解线性表的

序表中的实现;②顺序表的应用算法设

意义;

计示例

2.线性表的顺序

2.3线性表的链式存储结构:

实现;

①单链表以及线性表基本运算算法在单

线性表3.线性表的顺序20

链表中的实现;②单链表的应用算法设

结构的增删改查;

计示例;③双链表以及线性表基本运算

4.线性表的链接

算法在双链表中的实现;④双链表的应

实现;

用算法设计示例;⑤循环链表

5.线性表的应用

多种数据结顺序表和链表的比较

构线性表的应用:

求解两个多项式相加问题

①串的定义;②串的存储结构一顺序串

1.串的意义;

和链串;③串的模式匹配(BF算法和KMP

2.数组的意义;

串和数组算法)20

3.串与数组的应

数组:

用;

①数组的基本概念;②特殊矩阵的压缩

存储;③稀疏矩阵

栈:

栈和队列①栈的定义;②顺序栈及其实现;③顺1.栈的意义;20

序栈的应用算法设计示例;④链栈及其2.队列的意义;

实现;⑤链栈的应用算法设计示例3.栈与队列的应

⑥栈的综合应用(用栈求解简单表达式用;

求值问题,用栈求解迷宫问题)4.字符串的操

队列:作。

①队列的定义;②顺序队及其实现;③

顺序队的应用算法设计示例;④链队及

其实现;⑤链队的应用算法设计示例;

⑥中双端队列deque⑦队列的综合应用

(用队列求解迷宫问题);⑧优先队列

(堆)

①树的定义和逻辑表示;②树的基本术

语;③树的性质;④树的基本运算;⑤

树的存储结构

二叉树:

①二叉树的概念;②二叉树的性质;③

1.了解树结构的

二叉树存储结构;④二叉树的递归算法

基本概念;

设计;⑤二叉树的基本运算及其实现

2.二叉树的基本

树二叉树先序、中序和后序遍历:20

性质;

①二叉树遍历的概念;②先序、中序和

3.二叉树的存储

后序遍历递归算法;③递归遍历算法的

及遍历;

应用;④先序、中序和后序遍历非递归

4.霍夫曼编码

算法

二叉树的层次遍历:

①层次遍历过程;②层次遍历算法设计;

③层次遍历算法的应用

二叉树的构造

线索二叉树

哈夫曼树

二叉树与树、森林之间的转换

并查集

合计80

1.了解排序技术

排序的基本概念

的基本概念;

插入排序:①直接插入排序;②折半插2.

入排序;③希尔排序插入排序;3.交换

交换排序:①冒泡排序:②快速排序

排序;4.选择排

选择排序:简单选择排序;②堆排序

排序多种排序序;.归并排序。10

归并排序:①自底向上的二路归并排序;5

②自顶向下的二路归并排序6.能实现排序算

基数排序各种内排序方法的比较和选择法。7.能写出排序

外排序:①生成初始归并段的方法;②

过程。8.排序算法

多路归并方法

的比较与改进

合计10

总计100

表3《数据结构》课程成绩综合评定标准

考核、评价项目权中小计

学习态度、纪律情况15%

30%

作业情况15%

形成性平时练习15%

实践情况30%

评价阶段练习15%

笔试考试20%

期末考试40%

上机考试20%

合计100%100%

表4《数据结构》实训成绩评定标准

考核、评价项目考评人权重

出勤情况、实训态度、安全意识、职业道德素

5%

质进行成绩评定教师

实训模块一

学生

实训内容和实训报告20%

出勤情况、实训态度、安全意识、职业道德素5%

教师

实训模块二质进行成绩评定

学生20%

实训内容和实训报告

出勤情况、实训态度、安全意识、职业道德素

5%

质进行成绩评定教师

实训模块二

学生

实训内容和实训报告20%

企业专家

答辩根据答辩内容、语速、流利程度、创新点等25%

教师

合计100%

九、学习情境设计(

学习情境1.1的设计一一数据结构基本概念

子学习领域1数据结构基本概念总课时:2

学习情境1」数据结构基本概念课时:2

学习目标:6.算法时间复杂度和空间复杂度的分析、复杂度对比

1.掌握数据结构在计算机系统中的地位和作用、基本概念和术语;

2.了解逻辑存储和物理存储的概念;

3.了解抽象数据类型的概念;

4.掌握递归函数的概念、使用方式及适用性。

5.理解算法的定义

主要内容教学方法建议

1.什么是数据结构7.数据结构的目标1.讲授法

2.算法及其描述2.案例法

3.编程语言简介3.问题驱动法

4.算法分析4.演示法

5.算法时间复杂度分析5.启发法

6.算法空间复杂度分析

教学材料使用工具学生知识与能力准备教师知识与能力要求考核与评价备注

>教科书>Eclipse>计算机信息技术基A精通Python开发技评价内容:

>辅导书>Pycharm础知识术>基本知识水平评价

>教案>多媒体>Python基础知识>中型以上大数据项>学习态度

>课程标准>>基本沟通与表达能目经验>作业完成情况

>教学进度表力>沟通与表达能力清评价方式:

>学生考核表>能够独立搭建晰>自评

Python开发环境>具备教师基本的教>小组评价

学能力>教师评价

>具备驾驭教材的能

学习情境1.2的设计一一线性表

子学习领域1线性表总课时:4

学习情境1.1线性表课时:4

学习目标:5.掌握循环链表、双向链表的概念和实现方式

1.掌握线性表的类型定义,线性表的逻辑结构;6.算法时间复杂度和空间复杂度的分析、复杂度对比

2.掌握线性表的基本操作;

3.掌握顺序表的表示和实现方式,各种顺序表的操作及算法的时间

复杂度;

4.掌握链表的表示和实现方式,各种链表的操作及算法的时间复杂

度;

主要内容教学方法建议

1.线性表的定义7.单链表的应用算法设计示例1.讲授法

2.线性表的顺序存储结构8.双链表以及线性表基本运算算法在双链表中2.案例法

3.顺序表以及线性表基本运算算法在W负序表中的实现的实现;3.问题驱动法

4.顺序表的应用算法设计示例9.双链表的应用算法设计示例;4.演示法

5.线性表的链式存储结构5.启发法

6.单链表以及线性表基本运算算法在4£链表中的实现

教学材料使用工具学生知识与能力准备教师知识与能力要求考核与评价备注

>教科书>Eclipse>计算机信息技术基A精通Python开发技评价内容:

>辅导书>Pycharm础知识术>基本知识水平评价

>教案>多媒体>Python基础知识>中型以上大数据项>学习态度

>课程标准>>基本沟通与表达能目经验>作业完成情况

>教学进度表力>沟通与表达能力清评价方式:

>学生考核表>能够独立搭建晰>自评

Python开发环境>具备教师基本的教>小组评价

学能力>教师评价

>具备驾驭教材的能

学习情境1.3的设计一一队列和栈

子学习领域1队列和栈总课时:4

学习情境1」队列和栈课时:4

学习目标:3.队列的基本概念和特性、抽象操作、链队列的表示及相关算法;

1.栈的基本概念和特性、抽象操作、顺序栈4.循环队列的表示和实现。

和链栈的表示及相关算法;

2.栈的应用;

主要内容教学方法建议

1.栈的定义;6.队列的定义1.讲授法

2.顺序栈及其实现;7.顺序队及其实现2.案例法

3.顺序栈的应用算法设计示例;8.顺序队的应用算法设计示例;3.问题驱动法

4.链栈及其实现;9.链队的应用算法设计示例4.演示法

5.链栈的应用算法设计示例

温馨提示

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

评论

0/150

提交评论