数据结构
数据结构
1000+ 人选课
更新日期:2025/06/25
开课时间2025/01/31 - 2025/07/31
课程周期26 周
开课状态开课中
每周学时-
课程简介

一、本课程共有70个教学微视频,共8章节,视频总时长达800多分钟。

二、本课程共80学时(理论学时48,实验学时32),理论3学分,实验1学分,开课一学期,开课时间为 2025年2月21日 至 2025年7月21日;

三、课程内容配套线下教材为“十二五”普通高等教育本科国家级规划教材《数据结构》第2版,主编: 陈越,编著:何钦铭、徐镜春、魏宝刚等,2016年6月,高等教育出版社;

四、教学计划如下:

(1)教学内容+理论课时

 1)概论(6学时)

 2)线性表(6学时)

 3)栈(3学时)

 4)队列(3学时)

 5)树(9学时)

 6)图(9学时)

 7)散列查找(5学时)

 8)排序(7学时)

五、授课方式介绍

基于翻转课堂的混合式教学。 

线上观看微课,做同步测试,参与讨论;线下重点难点释疑,拓展问题讨论。

六、成绩评价(校内):线上和线下融合、过程性评价与终结性评价相结合的多元化课程评价体系;

线上成绩是以“完成作业和测试情况”之成绩为计算依据,各项目占比如下:

(1)平台主观题作业成绩占12%。3道分析大题,针对数据处理需求,选择最合适的逻辑结构和存储结构,满足时空效率要求,并构建算法流程。

(2)平台客观题作业成绩占8%。包括8个章节客观题作业。

(3)平台测试成绩占8%。本课程一共8个章节小测试。

线下成绩是指本平台外的计分成绩,以课堂考表现、在浙大PTA平台上布置的实验、利用PTA平台进行的期中上机考试、以及线下期末考试为计算依据。各项目占比如下:

(1)课堂做英文题或回答英文问题表现占8%。

(2)实验占12%。 成绩为(所有实验题目总得分/所有实验题目总分)*100。另针对实验1对1答辩,参考答辩情况做调整,防止抄袭。

(3)期中考试占12%。

(4)期末考试占40%。纸质试卷考试。

本课程最终成绩=线上成绩*28% +线下成绩*72%(课堂考表现8%+编程实验*12% + 期中考试*12%+ 期末考试*40%)

七、成绩评价(校外

(1)视频观看50%。平台自动统计观看时长并计分。

(2)论坛发帖占5%。 普通帖子0.5分/个,精华帖子1分/个。

(3)笔记占5%。 普通笔记0.5分/个,精华笔记1分/个。

(4)平台客观题作业成绩占10%。包括8个章节客观题作业。

(5)平台测试成绩占10%。本课程一共8个章节小测试。

(6)拼题A上机实验(编程题和函数题)10%。会在公告中发布题目链接。此成绩会作为线下成绩上传。

(7)期末拼题A测试10%。会在公告中发布题目链接。此成绩会作为线下成绩上传。

课程大纲
第一章 概论【韩祥兰】
第一节 数据结构
1.1数据结构讨论的范畴
1.2 基本概念和术语
1.3 抽象数据类型
DS1_1数据结构
第二节 算法
2.1 算法的定义与描述
2.2 算法设计的要求
2.3 算法的评价
2.4 运行时间分析
2.5 算法比较:最大子列和问题(算法1-3)
2.5 算法比较:最大子列和问题(算法4)
DS1 _2算法
第二章 线性表【韩祥兰】
第一节 线性表及其抽象数据类型
2.1线性表的定义与抽象类型
DS2_1 线性表的定义及其抽象数据类型
第二节 线性表的顺序存储及其实现
2.2线性表的顺序存储实现
DS2_2 线性表的顺序存储及其实现
第三节 线性表的链式存储及其实现
2.3.1线性表的链式存储实现
2.3.2单链表的操作实现
2.3.3单链表的构造
第四节 线性表的应用
2.4.1 多项式的表示
2.4.2 多项式算法的相加实现
DS2_4 线性表的应用
第五节 线性表的另外两种链式存储结构及其实现
DS2_5_1 线性表-双向链表
DS2_5_2 线性表-循环链表
2.5.1 双向链表1
2.5.1 双向链表2
2.5.2 循环链表1
2.5.2 循环链表2
第三章 栈【韩祥兰】
第一节 栈及其抽象数据类型
3.1 栈及其抽象数据类型
DS3 堆栈
第二节 顺序栈
3.2 栈的顺序存储实现
第三节 链栈
3.3 栈的链式存储实现
第四节 栈的应用
3.4 堆栈应用:表达式求值1
3.4 堆栈应用:表达式求值2
第四章 队列【韩祥兰】
第一节 队列及其抽象数据类型
4.1 队列及其抽象数据类型
DS4 队列
第二节 顺序循环队列
4.2 顺序循环队列
第三节 链队列及队列的应用
4.3 链队列及队列的应用
第五章 树【刘仰光 韩祥兰】
第一节 树的定义、表示和术语
树的定义、表示和术语
DS5_树(第一节+第二节)
树的遍历及树的存储结构
第二节 二叉树
二叉树的概念
二叉树的抽象数据类型
二叉树的遍历1
二叉树的遍历2
二叉树的遍历3
二叉树的遍历——遍历算法的应用
二叉树的创建
第三节 二叉搜索树
查找与二叉搜索树
二叉搜索树的动态查找
二叉搜索树的插入
二叉搜索树的删除
树(第三节+第四节)
第四节 平衡二叉树
平衡二叉树的定义
平衡二叉树的调整
第五节 优先队列(堆)
堆的意义和定义
最大堆的操作—插入
最大堆的操作—删除
最大堆的建立
DS5_树(第四节+第五节)
第六节 哈夫曼树
哈夫曼树
哈夫曼编码
第六章 图【宋光慧】
第一节 图的基本概念
图的基本概念
第二节 图的存储结构
图的存储结构
第三节 图的遍历
图的遍历深度优先搜索
图的遍历广度优先搜索
第四节 最小生成树
最小生成树Prim算法
最小生成树Kruskal算法
本章课件 图
第五节 最短路径
最短路径迪杰拉斯算法
最短路径Floyd算法
第六节 拓扑排序
拓扑排序
第七节 关键路径
关键路径
第七章 散列查找【徐斌】
第一节 引子
第一节 引子
DS7 散列查找
第二节 基本概念
第二节 基本概念
第三节 散列函数
第三节 散列函数
第四节 处理冲突的方法
开放定址法:线性探测
其它开放定址法及分离链接法
第五节 散列表的应用
应用实例
第八章 排序【徐斌】
第一节 引子
引子
本章课件 排序
第二节 选择排序
选择类排序
第三节 插入排序
插入类排序
第四节 交换排序
交换排序
第五节 归并排序及排序总结
归并排序