这门课解决什么问题

数据结构是计算机考研专业课里绕不开的硬骨头,也是很多非科班转行者最怕的部分。这门课解决的核心场景是:看书时觉得概念都懂,一到做题就卡壳,尤其是算法设计题,脑子里有思路但写不出完整的代码逻辑。它不兜售速成技巧,而是把线性表、树、图、查找与排序这些考点拆成具体的代码实现过程,帮你补上“概念到代码”中间断层的那一步。如果你正卡在“能看懂伪代码但写不出可运行逻辑”的阶段,这份资料能帮你把抽象的考点落到具体的指针操作和边界判断上。

适合什么基础与建议先看哪几块

这份资料默认你已经掌握一门编程语言的基础语法,比如变量、循环、函数和指针。如果你连基本语法都还没过一遍,建议先去补语言基础,否则看到链表节点的内存分配会直接懵掉。对于符合基础的读者,建议先从抽象数据类型和算法分析这两块看起,不要一上来就死磕树和图。前者帮你建立“数据结构到底在研究什么”的认知框架,后者讲清时间复杂度的计算逻辑,这是后面所有章节分析算法优劣的基础。把这两块吃透,再看链表和二叉树时,对插入删除操作的循环条件和递归边界会有更清晰的理解。如果复习时间紧张,优先看树、图、排序三大块,这是考研大题的高频出题点。

资料怎么配合练习与学完能做什么

看视频时不要只当背景音播放,资料里的代码片段必须自己敲一遍。建议搭配一本主流教材,每看完一个章节,先合上视频自己默写核心操作的代码逻辑,比如单链表的插入删除、二叉树的三种遍历。写不出来再回去重看对应片段,重点看讲师是怎么处理边界条件的。学完这套资料,你能独立写出考研大纲要求的核心数据结构代码,能分析一段给定算法的时间和空间复杂度,并且能应对试卷里常见的算法设计大题。对于转行找工作的人,这些底层逻辑也是应对技术面试中手撕代码环节的底气。务实地说,它不能帮你走捷径,但能帮你把容易失分的基础分牢牢攥在手里。


数据结构是计算机考研专业课中的“基石”,它不仅是算法设计的基础,更是考研笔试和面试的重点考察内容。很多考生因对数据结构的核心概念理解不透彻、算法实现不熟练,在考试中频频失分。而几米课堂全新推出的《数据结构精讲课程——计算机考研专业课程》,将带你系统梳理知识脉络,攻克难点考点,让数据结构成为你考研路上的“加分项”。

课程目录

*   01 绪论/

  *   01 课程说明 (19.08 MB), 07:28

  *   02 课程的意义以及概览 (71.86 MB), 26:41

  *   03 基本概念和术语 (50.43 MB), 18:20

  *   04 抽象数据类型——初级认识(定义) (43.36 MB), 15:26

  *   05 代码体会引用类型 (34.03 MB), 10:59

  *   06 ADT表示、实现 (28.95 MB), 10:19

  *   07 算法与算法分析 (79.53 MB), 27:18

  *   08 时间复杂度和空间复杂度 (73.29 MB), 25:52

  *   09 绪论小结 (16.66 MB), 06:10

*   02 线性表/

  *   01 线性表的定义 (31.74 MB), 12:20

  *   02 线性表ADT定义 (37.44 MB), 13:15

  *   03 ADT的应用——中级理解 (30.12 MB), 11:00

  *   04 顺序表的定义存储结构 (38.51 MB), 13:13

  *   05 顺序表ADT工程框架(代码) (34.52 MB), 10:36

  *   06 顺序表基本操作——初始化 (22.14 MB), 08:28

  *   07 顺序表基本操作——插入 (57.66 MB), 17:40

  *   08 顺序表基本操作——删除 (32.72 MB), 09:57

  *   09 顺序表ADT编码实战1(代码) (71.51 MB), 17:24

  *   10 顺序表ADT编码实战2(代码) (56.36 MB), 12:19

  *   11 顺序表ADT进阶理解1(代码) (28.88 MB), 07:33

  *   12 顺序表ADT进阶理解2(代码) (39.31 MB), 10:26

  *   13 顺序表练习和链表 (47.35 MB), 17:56

  *   14 单链表的查找(按序、按值) (33.76 MB), 13:11

  *   15 单链表的插入和删除 (35.94 MB), 15:17

  *   16 单链表的创建(顺序、逆序) (39.42 MB), 12:19

  *   17 单链表ADT(代码) (96.08 MB), 24:18

  *   18 静态链表 (37.54 MB), 12:07

  *   19 静态链表的操作 (44.31 MB), 13:14

  *   20 循环链表 (25.58 MB), 10:55

  *   21 双向链表 (27.45 MB), 12:29

  *   22 各种存储类型的比较 (18.27 MB), 06:36

  *   23 线性表的应用 (34.37 MB), 14:03

  *   24 习题操练——客观题 (38.10 MB), 15:11

  *   25 习题操练——程序题 (63.85 MB), 16:22

  *   26 习题操练——思考题 (61.61 MB), 20:26

  *   27 线性表小结 (32.12 MB), 11:45

*   03 栈和队列/

  *   01 栈和队列 (15.60 MB), 06:26

  *   02 栈的定义和ADT定义 (34.72 MB), 13:00

  *   03 顺序栈以及存储结构 (35.58 MB), 12:55

  *   04 顺序栈实战——初始化 (33.04 MB), 09:08

  *   05 顺序栈实战——销毁、清空、判空、求长度、取栈顶 (22.82 MB), 06:15

  *   06 顺序栈实战——遍历、压栈、弹栈 (48.62 MB), 12:59

  *   07 顺序栈实战——基本操作验证 (46.59 MB), 12:52

  *   08 顺序栈实战——进阶总结 (26.36 MB), 09:24

  *   09 链栈 (23.18 MB), 08:29

  *   10 数制转换应用 (21.45 MB), 08:46

  *   11 编码实战——数制转换 (33.92 MB), 09:48

  *   12 括号匹配的实现 (22.92 MB), 08:08

  *   13 行编辑程序实现 (23.27 MB), 07:33

  *   14 迷宫求解 (22.37 MB), 08:31

  *   15 表达式求值 (31.70 MB), 12:25

  *   16 栈在递归实现中的应用 (54.63 MB), 16:26

  *   17 队列的意义和定义 (44.51 MB), 14:12

  *   18 队列的ADT定义和存储实现 (19.40 MB), 07:16

  *   19 链队列编码实战——存储和初始化 (37.31 MB), 11:37

  *   20 链队列编码实战——销毁、入队等 (49.91 MB), 14:31

  *   21 链队列编码实战——出队 (25.13 MB), 08:29

  *   22 链队列编码实战——验证(使用ADT) (39.74 MB), 10:22

  *   23 循环队列的意义 (45.84 MB), 14:17

  *   24 循环队列的存储和实现 (40.04 MB), 15:51

  *   25 习题操练 (69.04 MB), 23:57

  *   26 栈和队列小结 (37.15 MB), 15:38

*   04 串/

  *   01 串的定义 (45.06 MB), 16:19

  *   02 串的ADT定义 (51.02 MB), 16:23

  *   03 最小操作子集 (21.76 MB), 07:21

  *   04 定长存储和分析 (47.50 MB), 17:02

  *   05 堆分配存储和实现 (28.70 MB), 07:53

  *   06 块链存储及其意义 (19.64 MB), 06:40

  *   07 模式匹配 (45.34 MB), 15:29

  *   08 编码实战——朴素的模式匹配 (37.96 MB), 13:06

  *   09 编码实战——朴素的模式匹配验证 (33.13 MB), 09:38

  *   10 KMP算法 (46.29 MB), 16:10

  *   11 next数组求法 (37.60 MB), 12:00

  *   12 编码实战——KMP (45.21 MB), 12:34

  *   13 next改进算法 (36.52 MB), 11:56

  *   14 串的小结 (12.65 MB), 04:32

*   05 数组和广义表/

  *   01 数组的文字定义 (30.17 MB), 10:04

  *   02 数组的ADT定义 (30.68 MB), 08:36

  *   03 数组的顺序存储 (45.98 MB), 14:24

  *   04 多维数组的存储 (60.44 MB), 19:30

  *   05 数组的初始化 (70.52 MB), 18:51

  *   06 数组的定位以及应用 (30.17 MB), 09:44

  *   07 特殊矩阵的压缩存储 (61.50 MB), 19:33

  *   08 稀疏矩阵的三元组顺序表 (24.19 MB), 07:57

  *   09 编码实战——三元组顺序表 (51.97 MB), 16:59

  *   10 矩阵的转置 (55.00 MB), 16:38

  *   11 编码实战——矩阵转置 (28.79 MB), 09:01

  *   12 编码实战——判断是否非零元 (61.19 MB), 17:57

  *   13 矩阵的快速转置 (74.78 MB), 22:18

  *   14 带行表的三元组顺序存储 (57.38 MB), 19:53

  *   15 十字链表 (40.01 MB), 14:13

  *   16 广义表 (58.64 MB), 19:26

  *   17 广义表的存储和运算 (62.20 MB), 19:39

*   06 树和二叉树/

  *   01 基本概念 (34.95 MB), 11:27

  *   02 二叉树性质1—2 (33.87 MB), 12:18

  *   03 二叉树性质3—5 (63.33 MB), 20:40

  *   04 二叉树的顺序存储 (39.86 MB), 14:20

  *   05 二叉树的链式存储 (37.50 MB), 15:02

  *   06 遍历二叉树 (70.50 MB), 25:27

  *   07 遍历的递归代码 (34.77 MB), 12:12

  *   08 二叉树其他算法的实现 (59.70 MB), 19:51

  *   09 编码实战——创建二叉树 (33.33 MB), 10:58

  *   10 编码实战——遍历二叉树和深度 (65.45 MB), 16:24

  *   11 线索化二叉树 (65.33 MB), 18:38

  *   12 树的双亲表示法 (30.52 MB), 11:33

  *   13 编码实战——存储和树的创建 (42.14 MB), 13:00

  *   14 编码实战——求树的深度 (41.06 MB), 10:48

  *   15 树的孩子表示法 (44.44 MB), 13:56

  *   16 孩子兄弟表示法 (23.76 MB), 08:49

  *   17 树与二叉树的相互转换 (28.99 MB), 10:08

  *   18 树和森林的遍历 (32.75 MB), 10:54

  *   19 哈夫曼树和哈夫曼编码 (92.21 MB), 34:35

  *   20 编码实战——Huffman树存储结构 (33.69 MB), 10:28

  *   21 编码实战——Huffman树的建立 (48.52 MB), 14:32

  *   22 编码实战——Huffman树Select的实现 (26.38 MB), 07:16

  *   23 编码实战——逆向Huffman编码的实现 (44.76 MB), 12:49

  *   24 编码实战——Huffman编码的验证 (51.80 MB), 12:27

  *   25 编码实战——Huffman编码(后记) (38.80 MB), 10:47

*   07 图/

  *   01 图的基本术语 (47.48 MB), 16:04

  *   02 基本术语(续) (42.59 MB), 13:53

  *   03 图的邻接矩阵表示法 (41.69 MB), 14:27

  *   04 邻接矩阵表示法的存储结构定义 (62.52 MB), 16:47

  *   05 邻接表表示法 (53.82 MB), 17:10

  *   06 图的十字链表表示法 (22.71 MB), 08:05

  *   07 邻接多重表 (20.11 MB), 07:21

  *   08 图的遍历 (39.54 MB), 14:18

  *   09 编码实战——图的邻接矩阵存储和连通性判断(一) (62.01 MB), 16:38

  *   10 编码实战——图的邻接矩阵存储和连通性判断(二) (67.34 MB), 19:11

  *   11 编码实战——图的邻接矩阵存储和连通性判断(三) (24.79 MB), 05:59

  *   12 最小生成树 (34.13 MB), 10:45

  *   13 普里姆算法的内存过程 (48.34 MB), 13:49

  *   14 克鲁斯卡尔算法 (20.56 MB), 06:03

  *   15 拓扑排序 (66.36 MB), 19:56

  *   16 关键路径基础 (37.60 MB), 09:59

  *   17 关键路径计算 (68.52 MB), 20:16

  *   18 最短路径 (55.46 MB), 17:41

  *   19 迪杰斯特拉算法计算 (57.17 MB), 18:52

  *   20 编码实战——迪杰斯特拉(设计) (37.79 MB), 14:10

  *   21 编码实战——有向网的存储与创建 (56.11 MB), 15:03

  *   22 编码实战——迪杰斯特拉算法程序化 (65.55 MB), 15:21

  *   23 编码实战——迪杰斯特拉算法程序验证 (84.73 MB), 17:11

  *   24 编码实战——迪杰斯特拉算法后记 (61.56 MB), 14:19

  *   25 弗洛伊德算法 (44.00 MB), 13:28

*   08 查找/

  *   01 顺序查找 (62.46 MB), 22:53

  *   02 顺序查找性能分析 (27.01 MB), 08:02

  *   03 折半查找以及性能分析 (27.91 MB), 12:17

  *   04 折半查找的性能和代码 (34.04 MB), 11:05

  *   05 索引查找 (37.78 MB), 13:05

  *   06 二叉排序树 (40.21 MB), 12:34

  *   07 二叉排序树的插入与生成 (21.49 MB), 06:46

  *   08 二叉排序树的删除 (26.46 MB), 10:10

  *   09 二叉排序树的性能分析 (35.75 MB), 11:50

  *   10 平衡旋转 (44.35 MB), 14:30

  *   11 最小平衡子树以及练习题 (22.05 MB), 07:23

  *   12 B树 (48.30 MB), 15:41

  *   13 B-树的查找和插入 (30.56 MB), 12:22

  *   14 B-树的生成 (63.04 MB), 15:56

  *   15 B-树的删除和B+树 (32.27 MB), 12:32

  *   16 哈希表和哈希查找 (51.70 MB), 15:38

  *   17 哈希函数的构造方法 (45.67 MB), 15:07

  *   18 冲突处理的方法——开放定址法 (39.02 MB), 13:04

  *   19 冲突处理的方法——链地址法 (51.59 MB), 19:18

  *   20 查找小结 (18.11 MB), 07:28

*   09 排序/

  *   01 排序 (48.56 MB), 16:11

  *   02 直接插入排序 (40.46 MB), 14:01

  *   03 直接插入排序代码以及性能分析 (32.04 MB), 12:01

  *   04 折半插入排序 (33.62 MB), 10:55

  *   05 希尔排序 (42.81 MB), 13:55

  *   06 冒泡排序 (29.94 MB), 10:49

  *   07 快速排序过程与分析 (57.16 MB), 18:32

  *   08 简单选择排序 (33.97 MB), 12:53

  *   09 堆排序 (54.74 MB), 20:29

  *   10 二路归并排序 (20.27 MB), 06:33

  *   11 基数排序 (36.74 MB), 11:52

  *   12 链式基数排序 (35.32 MB), 13:01

  *   13 练习——直接插入排序和快排算法实战 (46.12 MB), 13:24

  *   14 练习——堆排序算法实战 (58.42 MB), 15:37

  *   15 各种排序的对比 (34.20 MB), 12:37