本课程2021年被教育部认定为第二批国家级一流本科课程(线上线下混合),2023年被陕西省教育厅认定为省级课程思政示范课程。
数据结构是一门面向设计,且处于计算机学科核心地位的技术基础和主干必修课,也是算法分析与设计、操作系统、编译技术、计算机图形与图像处理等专业课程的先修课程。根据学科的最新发展,对所教授课程的教学内容进行必要的筛选、补充、更新和重组,使其既能反映该学科领域最基本最核心的知识,又能反映该学科最新的进展和动态,注重学生“计算思维”能力和创新实践能力的培养,并补充了后续课程和相关领域应用的实例,满足信息科学技术的发展需求。
计算机科学的重要基石是算法,数据结构又是算法研究的基础。以实际应用案例为驱动,将各种数据结构与算法的知识融入到实际问题的解决中,对相关算法的核心思想进行深入剖析,并总结比较各类算法的特点和适用范围,重点培养学生利用数据结构知识分析和解决实际问题的能力,为后继课程的学习以及从事计算机软、硬件开发工作打下良好的基础,将思政教育和课程教学深度融合,培养学生良好的逻辑思维意识和创新意识,具备“大国工匠”精神,坚定科技创新的使命感。
第一章 引论
第1讲 数据结构的基本概念-1(总时长15分18秒)
第2讲 数据结构的基本概念-2(总时长11分12秒)
第3讲 数据结构的基本概念-3(总时长10分29秒)
第4讲 数据的逻辑结构和存储结构(总时长11分19秒)
第5讲 算法及其时间复杂度(总时长14分59秒)
第6讲 时间复杂度及应用(总时长10分44秒)
课程思政案例
在线练习1
单元作业1
第二章 线性表
第1讲 线性表的概念及顺序存储(总时长17分44秒)
第2讲 单链表的概念及其基本操作(总时长12分27秒)
第3讲 建立单链表(总时长13分45秒)
第4讲 循环链表(总时长14分45秒)
第5讲 双向链表(总时长16分01秒)
第6讲 一元多项式的表示和运算(总时长16分08秒)
课程思政案例
实验内容
在线练习2
单元作业2
第三章 栈和队列
第1讲 栈的概念及其基本操作(总时长13分06秒)
第2讲 栈的概念及其基本操作—双端栈(总时长12分10秒)
第3讲 栈的应用—递归及汉诺塔问题(总时长16分27秒)
第4讲 栈的应用—迷宫实验(总时长07分40秒)
第5讲 队列的概念及基本操作(总时长16分31秒)
第6讲 队列的概念及应用—链队列(总时长11分10秒)
第7讲 表达式的求值问题(总时长15分01秒)
第8讲 递归与分治算法(总时长12分06秒)
课程思政案例
实验内容
单元作业3
单元测试1
综合实验剖析-马踏棋盘
第1讲 马踏棋盘1(总时长11分31秒)
第2讲 马踏棋盘2(总时长10分42秒)
第四章 串
第1讲 串的基本操作(总时长09分34秒)
第2讲 串的简单模式匹配(总时长13分18秒)
第3讲 串的KMP模式匹配算法(总时长09分15秒)
第4讲 模式串的next值计算思想(总时长07分52秒)
第5讲 模式串的next值计算实现(总时长08分19秒)
第6讲 模式串的nextval值(总时长11分57秒)
课程思政案例
单元作业4
在线练习4
第五章 多维数组和广义表
第1讲 数组的定义与顺序存储(总时长12分25秒)
第2讲 矩阵的压缩存储(总时长11分03秒)
第3讲 三元组矩阵的快速转置(总时长12分18秒)
第4讲 广义表(总时长11分53秒)
课程思政案例
实验内容
在线练习5
单元作业5
课程习题解析(前三章)
第1讲 习题讲解1(引论,总时长08分50秒)
第2讲 习题讲解2(线性表,总时长10分37秒)
第3讲 习题讲解3(栈和队列,总时长09分54秒)
第六章 树
第1讲 二叉树的性质(总时长14分00秒)
第2讲 二叉树的顺序存储(总时长09分21秒)
第3讲 二叉树的遍历(总时长17分11秒)
第4讲 统计叶子结点(总时长06分02秒)
第5讲 计算二叉树的高度(总时长05分54秒)
第6讲 二叉树的恢复建立(总时长12分02秒)
第7讲 二叉树的非递归遍历(总时长13分19秒)
第8讲 线索二叉树(总时长12分00秒)
第9讲 线索二叉树的遍历(总时长10分57秒)
第10讲 树和森林(总时长12分21秒)
第11讲 树与森林的遍历(总时长11分22秒)
第12讲 哈夫曼树(总时长12分48秒)
第13讲 哈夫曼编译码(总时长12分48秒)
第14讲 哈夫曼编码算法(总时长09分30秒)
第15讲 解空间树及其相关算法(总时长11分37秒)
课程思政案例
实验内容
单元测试2
课程习题解析(第四章、第五章)
第4讲 习题讲解4(串,总时长09分41秒)
第5讲 习题讲解5(多维数组和广义表,总时长09分20秒)
综合实验剖析-文件解压缩
第3讲 文件压缩(总时长13分34秒)
第4讲 文件解压(总时长09分04秒)
第七章 图
第1讲 图的基本概念(总时长13分33秒)
第2讲 图的存储(总时长15分27秒)
第3讲 图的深度优先遍历(总时长13分05秒
第4讲 图的广度优先遍历(总时长07分40秒)
第5讲 图的最小生成树-Prim算法思想(总时长11分40秒)
第6讲 图的最小生成树-Prim算法实现(总时长11分21秒)
第7讲 图的最小生成树-Kruskal算法(总时长09分25秒)
第8讲 图的拓扑排序思想(总时长10分38秒)
第9讲 图的拓扑排序实现(总时长09分35秒)
第10讲 图的关键路径思想(总时长12分26秒)
第11讲 图的关键路径实现(总时长07分19秒)
第12讲 图的单源最短路径-Dijkstra思想(总时长10分27秒)
第13讲 图的单源最短路径-Dijkstra实现(总时长07分39秒)
第14讲 贪心算法(总时长12分48秒)
课程思政案例
实验内容
单元作业7
在线练习7
课程习题解析-非线性结构(第六章、第七章)
第6讲 习题讲解6(树,总时长07分52秒)
第7讲 习题讲解7(图,总时长09分25秒)
第八章 查找
第1讲 顺序查找(总时长10分21秒)
第2讲 折半查找(总时长12分07秒)
第3讲 二叉排序树的基本概念与查找(总时长10分00秒)
第4讲 二叉排序树的插入与生成(总时长09分05秒)
第5讲 二叉排序树的删除(总时长13分21秒)
第6讲 哈希表基本概念(总时长09分41秒)
第7讲 哈希函数(总时长08分30秒)
第8讲 哈希处理冲突(总时长13分58秒)
课程思政案例
实验内容
单元作业8
在线练习8
第九章 排序
第1讲 排序基本概念(总时长04分59秒)
第2讲 直接插入排序(总时长11分08秒)
第3讲 希尔排序(总时长10分43秒)
第4讲 冒泡排序(总时长09分31秒)
第5讲 快速排序(总时长13分22秒)
第6讲 选择排序(总时长08分45秒)
第7讲 树形排序(总时长08分01秒)
第8讲 堆排序(总时长15分54秒)
第9讲 归并排序(总时长08分15秒)
第10讲 基数排序(总时长11分45秒)
课程思政案例
在线练习9
综合实验剖析-校园导游图
第5讲 校园导游图(总时长12分37秒)
课程习题解析-相关技术(第八章、第九章)
第8讲 习题讲解8(查找,总时长10分41秒)
第9讲 习题讲解9(排序,总时长10分27秒)
高级语言程序设计。
具备初步的C程序设计知识,将有助于深入学习本课程的内容。
1.王曙燕等,《数据结构与算法》新形态教材,高等教育出版社,2019.8
2.王曙燕等,《数据结构与算法》,人民邮电出版社,2013.9
3.耿国华等,《数据结构-C语言描述(第2版)》及随附教学光盘,高等教育出版社,2011.6
4.严蔚敏等,《数据结构(C语言版)》,清华大学出版社,2007.3.2011.1