前言
新学期,我接受安排,承担“数据结构”课程的教学任务。历时四年的,针对大一的“程序设计基础”课程的教学暂时停止。在这四届学生身上,从最初的有博客交作业,到网络习题课,再到课堂录屏上网,然后有了翻转课堂。一个不安分的老师,带了四届勇于改变的学生。
其实,当初沉到大一,探讨针对大一学生的教学方法,我似乎也有些疲态,正想着将这四年处理教学问题中的心得,在和大二的学生共同学习中延续。学习状态不佳的大学生,学习观念、学习方法方面需要的改变还有很多,课程组这样的安排,正合我意。没有特意做工作,机会也就来了。
闲言少叙,“数据结构”课的首届弟子们,老贺要和你们一起折腾了。让我们在大学中学得知识,学会学习。用上了蓝墨云班课,手机将在课堂内外发挥更大的作用了,我们玩互联网+时代的学习。
学生名单及链接
计146-1
1. 傅军超 刘 强 魏永恒 孙翰文 张 耀 江 楠 杨慧娟 杜冠廷
2. 朱希康 纪冬雪 臧晓彤 杜文文 商文轲 陈梦萍 王雪洁 周 洁
3. 芦亚茹 刘 熠 王 旭 房 琦 苏凯祺 徐群壮 刘 磊 张 栋
4. 周凯旋 石智康 王吉元 孙浩瀚 张 伟 孙钦达 刘小硕
5. 王 聪 李 艺 刘晨筱 王增亮 董子宾 吕云双 佟兴锋 朱振华
6. 孙立立 王 阳 孙 洁 孙 潇 李丛丛 高 露 李涵睿 陈胜男
7. 魏乐天 彭子竹 张芸嘉 张 晗 毕梦楠 李竹雅
计146-2
1. 张志康 李 浩 田祥弘 程 昂 辛志勐 朱国荣
2. 李子伦 林祁 张佳慧 杜亭亭 马笑媛 赵 鹤 王 晓 孙钰坤
3. 罗海员 于奎民 李宗政 张荣飞 刘亚浩
4. 张瑞蕾 桑 立 杨 珺 杨 宁 杨 征 邱 暖
5. 徐吉平 巩凯强 李哲 于东林 唐子健 朱绍懿
6. 王 敏 杜佳丽 王 超 郑兆涵 崔从敏 孙彩虹 周宇帆
7. 姚昭彦 房宜东 贾召飞 郑孚嘉 马明挥 石 超
8. 李 宁 高 哲 焦梦真 宋 晨 彦肖璇 程梦莹 林 莉
课程资源
第1周 学习改革准备活动
课堂活动
1. 改变学习的必要性;2. 关于翻转课堂;3. 我们的课堂组织;
第2周 数据结构概述
课前自学视频目录 [进入CSDN学院课程]
1. 关于数据结构课程 16:49
2. 什么是数据结构 13:15
3. 数据的逻辑结构及类型 19:29
4. 抽象数据类型 14:13
5. 算法及其描述 17:08
6. 算法复杂度概念 22:15
7. 算法分析实例 12:16
8. 算法与数据结构 14:56课后上机实践:第2周 数据结构、算法、程序设计
答疑实录:链接到……
第3周 线性表(1)——顺序表
课前自学视频目录 [进入CSDN学院课程]
1. 导学 0:00
2. 线性表的逻辑结构与基本运算 21:25
3. 线性表的顺序存储结构 8:50
4. 创建线性表的实现(暨参数类型的讨论) 18:40 [ 例程]
5. 顺序表基本运算的实现 18:48 [算法库] [补充案例:找Bug]
6. 线性表顺序存储的应用 17:31 [例程]
7. 实践指导:用程序实践算法 15:30 [例程] [文字版]课后上机实践及参考:第3周 线性表(一)——顺序存储结构
答疑实录:链接到……
第4周 线性表(2)——链表
课前自学视频目录 [进入CSDN学院课程]
8. 线性表的链式存储 12:19
9. 建立单链表 16:30 [例程]
10. 单链表基本操作的实现 18:59 [算法库]
11. 单链表应用举例 24:12 [例程]
12. 双链表 19:36 [算法库]
13. 循环链表 6:23 [算法库: 循环单链表] [算法库: 循环双链表]
14. 线性表的应用 27:10 [例程]
15. 有序表 15:13 [例程]课后上机实践及参考:第4周 线性表(二)——链表
[拓展:C++标准模板库与数据结构]
答疑实录:链接到……
第5周 (中秋国庆休假)
第6周 栈和队列(1)——栈
课前自学视频目录 [进入CSDN学院课程]
1. “栈和队列”导学 9:23
2. 栈的定义 9:56
3. 栈的顺序存储结构及其基本运算实现 14:15 [算法库]
4. 栈的链式存储结构及其基本运算的实现 6:39 [算法库]
5. 栈的应用1-表达式求值 31:23 [例程]
6. 栈的应用2-迷宫问题 19:48 [例程]课后上机实践及参考:第6周 栈和队列(一)——栈
补充应用案例:栈结构用于8皇后问题的回溯求解
第7周 栈和队列(2)——队列
课前自学视频目录 [进入CSDN学院课程]
7. 队列的定义 5:46
8. 顺序队的存储及基本操作 12:24
9. 环形队列的存储及基本操作 21:00 [算法库]
10. 队列的链式存储结构及其基本运算的实现 17:07 [算法库]
11. 队列的应用-迷宫问题 21:39 [例程]
12. 双端队列 5:04课后上机实践及参考:第7周 栈和队列(二)——队列
第8周 串
课前自学视频目录 [进入CSDN学院课程]
1. 串的基本概念及导学 11:09 [自测]
2. 串的顺序存储及其基本操作实现 26:09 [算法库]
3. 串的顺序存储应用 12:53 [例程]
4. 串的链式存储及其基本操作实现 21:58 [算法库] [自测]
5. 串的模式匹配(Brute-Force算法) 16:15 [例程]
6. 串的模式匹配(KMP算法) 33:20 [例程] [自测]课后上机实践及参考:第8周 串
第9周 数组与广义表
课前自学视频目录 [进入CSDN学院课程]
1. 数组的基本概念与存储结构 22:06 [自测]
2. 特殊矩阵的压缩存储 31:56 [例程] [自测]
3. 稀疏矩阵的三元组表示 26:41 [算法库] [自测]
4. 稀疏矩阵的十字链表表示 28:33 [例程]
5. 广义表 13:58 [自测]
6. 广义表的存储结构及基本运算的实现 30:40 [算法库]课后上机实践及参考:第9周 数组与广义表
第10周 树和二叉树(1)
课前自学视频目录 [进入CSDN学院课程]
1 树结构导学 6:19
2 树的基本概念 18:04
3 树的基本术语 7:41
4 树的性质 14:59
5 树的存储结构 13:33 [例程]
6 二叉树概念和性质 18:02
7 二叉树与树、森林之间的转换 12:13
8 二叉树的存储结构 9:21
9 二叉树的基本运算及其实现 29:18 [算法库]
10 二叉树的遍历 18:42 [例程(算法)] [例程(应用)]课后上机实践及参考:第10周 树和二叉树(一)
第11周 树和二叉树(2)
课前自学视频目录 [进入CSDN学院课程]
11 二叉树遍历非递归算法 23:04 [例程]
12 层次遍历算法 10:05 [例程] [例程(应用)]
13 二叉树的构造 24:23 [例程]
14 线索二叉树 21:41 [例程]
15 哈夫曼树 29:24 [例程]课后上机实践及参考:第11周 树和二叉树(二)
第12周 图(1)
课前自学视频目录 [进入CSDN学院课程]
1. 图结构导学 12:16
2. 图的定义 7:34
3. 图的基本术语 21:22
4. 图的邻接矩阵存储结构及算法 16:55 [例程]
5. 图的邻接表存储结构及算法 22:52 [算法库]
6. 图的遍历 24:05 [例程]
7. 非连通图的遍历 7:55 [例程]
8. DFS(深度优先搜索)的应用 21:27 [例程]
9. BFS(广度优先搜索)的应用 12:12 [例程]课后上机实践及参考:第12周 图的基本运算和遍历
第13周 图(2)
课前自学视频目录 [进入CSDN学院课程]
10. 生成树的概念 13:10
11. 最小生成树的普里姆算 26:36 [例程]
12. 最小生成树的克鲁斯卡尔算法 18:16[例程]
13. 从一个顶点到其余各顶点的最短路径 34:15 [例程]
14. 每对顶点之间的最短路径 22:15[例程]
15. 拓扑排序 15:39[例程]
16. AOE网与关键路径 19:15课后上机实践及参考:第13周 最短路径和拓扑序列
第14周 查找(1)
课前自学视频目录 [进入CSDN学院课程]
1. 查找问题导学 13:31
2. 线性表的顺序查找 7:52 [例程]
3. 线性表的折半查找 20:05 [例程]
4. 索引存储结构 5:26
5. 分块查找 20:32 [例程]
6. 二叉排序树 22:58
7. 二叉排序树(续) 12:03 [例程]
8. 平衡二叉树 32:56 [例程]课后上机实践及参考:第14周 查找(一)
第15周 查找(2)和内部排序(1)
课前自学视频目录 [进入CSDN学院课程](查找部分)
9. B-树 29:01
10. B+树 5:491
11. 哈希表——散列结构 29:38
12. 哈希表的运算 27:40 [例程]
13. 拓展:谷歌搜索的数据结构 6:56课后上机实践及参考: 第15周 查找(2)
课前自学视频目录 [进入CSDN学院课程](排序部分)
1. 排序问题及导学 11:54
2. 插入排序之直接插入排序 18:00 [例程]
3. 插入排序之希尔排序 14:40 [例程]课后上机实践及参考: 第15周 内部排序(1) (并入16周部分)
第16周 内部排序(二)
课前自学视频目录 [进入CSDN学院课程]
4. 交换排序之冒泡排序 16:22 [例程]
5. 交换排序之快速排序 20:13 [例程]
6. 选择排序之直接选择排序 10:06 [例程]
7. 选择排序之堆排序 22:18 [例程] [补充示例]
8. 归并排序 18:08 [例程]
9. 简单的计数排序 8:33 [例程]
10. 基数排序 20:06 [例程]
11. 各种排序的比较 8:39课后上机实践及参考: 第16周 内部排序 (含15周内部排序部分)