包含了一个程序员 5 年内需要的所有数据结构与算法知识

*   01 基础篇一:复杂度分析【1.6 小时】【基础班】/

  *   01 复杂度分析课程内容.mp4 (4.67 MB), 01:16

  *   02 新建项目.mp4 (7.85 MB), 02:45

  *   03 为什么需要时间复杂度分析.mp4 (28.28 MB), 08:36

  *   04 算法执行时间的计算.mp4 (37.61 MB), 11:30

  *   05 大 O 复杂度表示法.mp4 (33.90 MB), 10:23

  *   06 渐进时间复杂度分析.mp4 (30.49 MB), 09:51

  *   07 常量阶时间复杂度.mp4 (13.80 MB), 04:13

  *   08 对数阶时间复杂度.mp4 (32.26 MB), 09:33

  *   09 时间复杂度分析方法总结.mp4 (10.16 MB), 03:01

  *   10 时间复杂度加法法则.mp4 (12.24 MB), 03:53

  *   11 时间复杂度乘法法则.mp4 (8.59 MB), 02:38

  *   12 时间复杂度分析例子.mp4 (19.63 MB), 05:47

  *   13 常用时间复杂度总结.mp4 (23.90 MB), 07:14

  *   14 平均时间复杂度.mp4 (22.67 MB), 06:57

  *   15 空间复杂度分析.mp4 (13.28 MB), 04:12

*   02 基础篇二:数组和链表【4.7 小时】【基础班】/

  *   01 静态数组.mp4 (90.63 MB), 25:45

  *   02 二次封装内置数组.mp4 (49.62 MB), 12:56

  *   03 3_二次封装内置数组的增删改查操作.mp4 (95.78 MB), 24:09

  *   04 4_二次封装内置数组的其他特点.mp4 (70.15 MB), 15:34

  *   05 5_动态数组的扩容和缩容.mp4 (76.42 MB), 20:21

  *   06 6_动态数组对比静态数组.mp4 (58.03 MB), 15:50

  *   07 7_链表对比数组.mp4 (64.07 MB), 18:27

  *   08 8_单向链表的查询操作实现.mp4 (67.75 MB), 21:07

  *   09 9_单向链表的修改和新增操作实现.mp4 (63.35 MB), 17:46

  *   10 10_单向链表的删除操作实现.mp4 (68.23 MB), 18:40

  *   11 11_单向链表测试及其复杂度分析.mp4 (58.75 MB), 15:33

  *   12 12_双向链表的优缺点.mp4 (47.88 MB), 13:04

  *   13 13_双向链表的修改和新增操作实现.mp4 (63.01 MB), 17:23

  *   14 14_双向链表的删除操作实现.mp4 (71.21 MB), 18:28

*   03 基础篇三:栈和队列【4.2 小时】【基础班】/

  *   01 1_栈的特点和使用场景.mp4 (52.91 MB), 16:07

  *   02 2_使用数组实现栈.mp4 (77.21 MB), 22:13

  *   03 3_使用链表实现栈.mp4 (81.25 MB), 22:02

  *   04 4_力扣 20 号题:有效括号(老).mp4 (78.06 MB), 24:22

  *   05 5_力扣 20 号题:最 small 栈.mp4 (89.45 MB), 26:21

  *   06 6_队列的特点和实现.mp4 (59.89 MB), 17:20

  *   07 7_循环队列的基础实现.mp4 (39.78 MB), 12:24

  *   08 8_循环队列的扩容和缩容.mp4 (60.79 MB), 18:31

  *   09 9_各种队列实现方式的比较和优化.mp4 (86.49 MB), 24:33

  *   10 10_Java 中的队列.mp4 (132.30 MB), 30:38

  *   11 11_剑指 9 号题:两个栈实现队列.mp4 (29.33 MB), 08:39

*   04 基础篇四:排序算法(一)【7 小时】【基础班】/

  *   01 1_双指针算法需要的基础知识.mp4 (40.23 MB), 12:43

  *   02 2_双指针之快慢指针.mp4 (124.85 MB), 34:18

  *   03 3_双指针之对撞指针以及总结.mp4 (79.63 MB), 23:57

  *   04 4_理解递归需要的基础知识.mp4 (60.86 MB), 18:18

  *   05 5_递归的理解.mp4 (85.55 MB), 27:57

  *   06 6_排序基础.mp4 (35.40 MB), 10:36

  *   07 7_冒泡排序.mp4 (84.34 MB), 25:17

  *   08 8_选择排序.mp4 (67.62 MB), 18:54

  *   09 9_插入排序.mp4 (155.43 MB), 44:33

  *   10 10_希尔排序(一).mp4 (74.07 MB), 23:01

  *   11 11_希尔排序(二).mp4 (83.86 MB), 20:33

  *   12 12_归并排序(一).mp4 (71.02 MB), 19:57

  *   13 13_归并排序(二).mp4 (86.46 MB), 22:23

  *   14 14_归并排序(三).mp4 (69.86 MB), 17:45

  *   15 15_归并排序(四).mp4 (42.42 MB), 11:25

  *   16 16_快速排序(一).mp4 (70.85 MB), 21:32

  *   17 17_快速排序(二).mp4 (53.40 MB), 15:49

  *   18 18_快速排序(三).mp4 (92.01 MB), 23:29

*   05 基础篇五:排序算法(二)【4.8 小时】【基础班】/

  *   01 1_桶排序.mp4 (128.51 MB), 34:59

  *   02 2_计数排序.mp4 (117.41 MB), 34:33

  *   03 3_基数排序.mp4 (90.18 MB), 24:16

  *   04 4_如何写一个通用的排序算法.mp4 (81.19 MB), 24:57

  *   05 5_引用类型数组的排序.mp4 (125.90 MB), 25:34

  *   06 6_Java 内置排序算法.mp4 (56.11 MB), 13:16

  *   07 7_力扣 56 题:合并区间.mp4 (51.94 MB), 14:56

  *   08 8_力扣 179 题:最大数.mp4 (66.97 MB), 17:38

  *   09 9_力扣 75 题:颜色分类.mp4 (56.66 MB), 16:34

  *   10 10_力扣 164 题:最 big 间距.mp4 (125.58 MB), 34:50

  *   11 11_剑指 51 题:数组中的逆序对.mp4 (94.82 MB), 25:51

*   06 基础篇六:二分算法【4.3 小时】【基础班】/

  *   01 1_二分查找代码实现.mp4 (71.39 MB), 22:20

  *   02 2_几个二分查找细节问题.mp4 (94.86 MB), 26:51

  *   03 3_二分查找的变形问题 (一).mp4 (81.07 MB), 23:57

  *   04 4_二分查找的变形问题 ( 二).mp4 (41.95 MB), 10:57

  *   05 5_二分查找的应用 - IP 地址维护.mp4 (131.51 MB), 27:57

  *   06 6_力扣 704 题:二分查找.mp4 (100.15 MB), 28:25

  *   07 7_力扣34题:在排序数组中查找元素的第一个和最后一个位置.mp4 (90.75 MB), 23:50

  *   08 8_力扣 35 题:搜索插入位置.mp4 (72.07 MB), 20:27

  *   09 9_力扣 33 题:搜索旋转排序数组.mp4 (50.03 MB), 14:38

  *   10 10_剑指 11 题:旋转排序数组的最small数字.mp4 (56.23 MB), 17:57

  *   11 11_力扣 852 题:山脉数组的峰顶索引.mp4 (35.72 MB), 12:02

  *   12 12_力扣 1095 题:二分查找代码实现.mp4 (28.48 MB), 08:04

*   07 基础篇七:链表相关算法【3 小时】【基础班】/

  *   01 1_链表相关算法:基础知识.mp4 (79.61 MB), 21:10

  *   02 2_力扣 203 题:移除链表元素.mp4 (63.50 MB), 17:37

  *   03 3_力扣 206 题:反转链表.mp4 (59.76 MB), 16:59

  *   04 4_力扣 876 题:链表的中间节点.mp4 (40.34 MB), 12:10

  *   05 5_力扣 19 题:删除链表的第 N 个节点.mp4 (49.53 MB), 13:36

  *   06 6_力扣 21 题:合并两个有序链表.mp4 (66.39 MB), 18:52

  *   07 7_力扣 23 题:合并 K 个升序链表.mp4 (72.88 MB), 20:04

  *   08 8_力扣 147 题:对链表进行插入排序.mp4 (54.64 MB), 15:55

  *   09 9_力扣 148 题:排序链表.mp4 (157.22 MB), 42:56

*   08 中级篇一:普通二叉树【4.7 小时】【中级班】/

  *   01 1_树的基本概念.mp4 (76.07 MB), 22:57

  *   02 2_二叉树的存储.mp4 (76.43 MB), 22:40

  *   03 3_二叉树的前序遍历.mp4 (84.34 MB), 22:37

  *   04 4_二叉树的中序遍历.mp4 (78.47 MB), 21:06

  *   05 5_二叉树的后序遍历.mp4 (55.68 MB), 14:17

  *   06 6_二叉树的层序遍历.mp4 (92.40 MB), 20:47

  *   07 7_二叉树的递归实现.mp4 (128.02 MB), 32:57

  *   08 8_深度优先搜索和广度优先搜索.mp4 (34.10 MB), 10:27

  *   09 9_求二叉树的big深度.mp4 (102.22 MB), 26:00

  *   10 10_力扣 112 题:路径之和.mp4 (111.56 MB), 31:00

  *   11 11_力扣 226 题:翻转二叉树.mp4 (45.43 MB), 13:11

  *   12 12_力扣 100 题:相同的树.mp4 (50.69 MB), 13:57

  *   13 13_力扣 101 题:对称二叉树.mp4 (51.03 MB), 14:23

*   09 中级篇二:二叉查找树【7.6 小时】【中级班】/

  *   01 1_二叉查找树的特点.mp4 (87.92 MB), 27:08

  *   02 2_二叉查找树的插入操作.mp4 (71.35 MB), 20:07

  *   03 3_二叉查找树的查询操作.mp4 (50.42 MB), 11:46

  *   04 4_二叉查找树删除操作(一).mp4 (61.21 MB), 17:38

  *   05 5_二叉查找树删除操作(二).mp4 (74.50 MB), 20:47

  *   06 6_二叉查找树删除操作(三).mp4 (114.85 MB), 22:27

  *   07 7_二叉查找树修改操作.mp4 (65.38 MB), 14:03

  *   08 8_递归实现二叉查找树新增操作.mp4 (104.83 MB), 26:50

  *   09 9_递归实现二叉查找树查询操作.mp4 (33.32 MB), 07:14

  *   10 9_递归实现二叉查找树删除操作.mp4 (133.28 MB), 33:20

  *   11 10_什么是 AVL 树.mp4 (61.63 MB), 19:13

  *   12 11_平衡因子.mp4 (79.14 MB), 22:26

  *   13 12_判断一棵树是否是平衡树.mp4 (34.11 MB), 08:35

  *   14 13_右旋转.mp4 (69.03 MB), 19:47

  *   15 14_左旋转.mp4 (47.64 MB), 13:23

  *   16 15_LR 和 RL.mp4 (51.03 MB), 14:32

  *   17 16_AVL 树新增测试以及删除操作.mp4 (79.17 MB), 12:58

  *   18 17_2-3 树.mp4 (71.63 MB), 23:12

  *   19 18_认识红黑树.mp4 (85.97 MB), 26:12

  *   20 19_代码实现红黑树左旋转.mp4 (62.72 MB), 18:15

  *   21 20_红黑树的颜色翻转和右旋转.mp4 (70.10 MB), 20:56

  *   22 21_红黑树添加节点操作.mp4 (94.58 MB), 23:40

*   10 中级篇三:堆和优先队列【4 小时】【中级班】/

  *   01 1_常用高层数据结构内容大纲.mp4 (14.96 MB), 04:00

  *   02 2_引入堆和优先队列的问题.mp4 (70.49 MB), 29:19

  *   03 3_二叉堆的 Sift Up 逻辑.mp4 (61.86 MB), 26:14

  *   04 4_二叉堆的 Sift Down 逻辑.mp4 (63.20 MB), 25:23

  *   05 5_堆化操作.mp4 (77.24 MB), 31:43

  *   06 6_优先队列.mp4 (35.47 MB), 13:54

  *   07 7_力扣 23:合并 K 个升序链表.mp4 (47.77 MB), 19:38

  *   08 8_lc 215:数组中的第 K 个最大值.mp4 (96.79 MB), 41:09

  *   09 9_lc 703:数据流中的第 K 大元素.mp4 (28.10 MB), 11:58

  *   10 10_lc 295:数据流的中位数.mp4 (43.68 MB), 18:55

*   11 中级篇四:Set、Map 和跳表【5.7 小时】【中级班】/

  *   01 1_Set 的实现.mp4 (158.54 MB), 38:28

  *   02 2_哈希方法实现 Set.mp4 (80.63 MB), 22:11

  *   03 3_哈希冲突解决方案:开放寻址法.mp4 (68.52 MB), 16:41

  *   04 4_哈希冲突解决方案:链表法.mp4 (126.69 MB), 29:48

  *   05 5_Map 的实现.mp4 (160.49 MB), 32:45

  *   06 6_HashMap 的实现.mp4 (76.07 MB), 15:59

  *   07 7_Set 和 Map 的测试.mp4 (103.87 MB), 25:18

  *   08 8_lc 349:两个数组的交集.mp4 (109.79 MB), 27:32

  *   09 9_lc 350:两个数组的交集二.mp4 (65.03 MB), 15:55

  *   10 10_lc 1:两数之和.mp4 (78.70 MB), 23:50

  *   11 11_lc 167:两数之和变形题之输入有序数组.mp4 (43.53 MB), 13:34

  *   12 12_lc 170:两数之和变形题之数据结构设计.mp4 (60.53 MB), 16:43

  *   13 13_lc 653:两数之和变形题之输入 BST.mp4 (34.35 MB), 09:46

  *   14 14_lc 15:三数之和.mp4 (89.95 MB), 24:33

  *   15 15_lc 18:四数之和.mp4 (19.71 MB), 04:30

  *   16 16_什么是跳表.mp4 (52.12 MB), 16:13

  *   17 17_跳表的查询操作.mp4 (83.11 MB), 22:40

  *   18 18_跳表的插入和删除操作.mp4 (85.28 MB), 22:02

  *   19 19_跳表的使用场景.mp4 (15.59 MB), 04:22

*   12 高级篇一:图的 DFS 和 BFS【5.1 小时】【高级班】/

  *   01 1_无向无权图的内容大纲.mp4 (12.91 MB), 03:28

  *   02 2_图的基本概念.mp4 (18.83 MB), 07:12

  *   03 3_图的存储:邻接矩阵.mp4 (117.11 MB), 30:50

  *   04 4_图的存储:邻接表.mp4 (146.63 MB), 35:40

  *   05 5_图的 DFS 遍历(一).mp4 (107.54 MB), 32:36

  *   06 6_图的 DFS 遍历(二).mp4 (132.54 MB), 33:29

  *   07 7_DFS 实现联通分量.mp4 (94.84 MB), 27:25

  *   08 8_DFS 实现求单源路径.mp4 (124.66 MB), 29:19

  *   09 9_DFS 实现环检测.mp4 (46.62 MB), 13:39

  *   10 10_DFS 实现二分图检测.mp4 (50.74 MB), 14:42

  *   11 11_图的 BFS 遍历.mp4 (50.32 MB), 14:26

  *   12 12_BFS 实现联通分量、单源路径、环检测以及二分图.mp4 (124.57 MB), 25:50

  *   13 13_单源最短路径算法.mp4 (75.68 MB), 18:48

*   13 高级篇二:图的经典算法【5 小时】【高级班】/

  *   01 1_floodfill 算法基础.mp4 (113.41 MB), 33:43

  *   02 2_floodfill 算法.mp4 (199.89 MB), 51:34

  *   03 3_有权图.mp4 (49.44 MB), 12:47

  *   04 4_最small生成树.mp4 (192.19 MB), 55:43

  *   05 5_最短路径.mp4 (175.49 MB), 45:20

  *   06 6_其他种类图的内容大纲.mp4 (4.68 MB), 01:31

  *   07 7_有向图.mp4 (141.62 MB), 32:18

  *   08 8_有向图环检测.mp4 (46.34 MB), 16:00

  *   09 9_拓扑排序.mp4 (85.03 MB), 25:04

*   14 应用篇一:字符串匹配算法【5.5 小时】/

  *   01 1_应用篇内容.mp4 (14.66 MB), 04:38

  *   02 2_lc 1244:排行榜.mp4 (136.84 MB), 31:42

  *   03 3_lc 1396:设计地铁系统.mp4 (63.22 MB), 14:48

  *   04 4_字符串匹配算法:BF 算法.mp4 (102.23 MB), 24:56

  *   05 5_字符串匹配算法:RK 算法.mp4 (157.57 MB), 39:08

  *   06 6_字符串匹配算法:BM 算法(一).mp4 (107.92 MB), 33:13

  *   07 7_字符串匹配算法:BM 算法(二).mp4 (132.39 MB), 41:03

  *   08 8_字符串匹配算法:KMP 算法(一).mp4 (87.51 MB), 28:48

  *   09 9_字符串匹配算法:KMP 算法(二).mp4 (114.55 MB), 34:14

  *   10 10_字典树.mp4 (125.35 MB), 34:24

  *   11 11_lc 208:实现 Trie(前缀树).mp4 (44.04 MB), 10:48

  *   12 12_lc 642:搜索自动补全系统.mp4 (123.47 MB), 30:23

*   15 应用篇二:数据库中的数据结构【3.0 小时】/

  *   01 14_缓存的概念.mp4 (70.58 MB), 22:38

  *   02 15_LRU 缓存算法.mp4 (177.14 MB), 43:31

  *   03 16_LFU 缓存算法.mp4 (187.86 MB), 42:08

  *   04 17_Redis Value 数据类型.mp4 (34.48 MB), 13:36

  *   05 18_MySQL 索引.mp4 (83.75 MB), 28:09

  *   06 19_B 树.mp4 (86.41 MB), 31:45

*   16 应用篇三:海量数据处理【2.4 小时】/

  *   01 1_海量数据处理课程内容.mp4 (29.41 MB), 08:47

  *   02 2_位图 (BitMap) 及其应用场景.mp4 (39.60 MB), 15:43

  *   03 3_代码实现 BitMap.mp4 (52.48 MB), 18:05

  *   04 4_2-BitMap.mp4 (20.20 MB), 08:22

  *   05 5_外部排序算法.mp4 (54.48 MB), 16:20

  *   06 6_多路归并排序算法及其代码实现.mp4 (82.56 MB), 25:52

  *   07 7_求 TopK 问题.mp4 (53.85 MB), 17:15

  *   08 8_哈希分治处理海量数据.mp4 (27.67 MB), 10:00

  *   09 9_布隆过滤器.mp4 (46.13 MB), 17:03

  *   10 10_海量数据处理总结.mp4 (26.00 MB), 09:18

*   17 专题篇一:学透递归【6.5 小时】/

  *   01 递归就该这么学习.mp4 (59.16 MB), 11:47

  *   02 1_栈:递归背后的那个女人.mp4 (18.84 MB), 07:33

  *   03 2_系统栈:从底层剖析函数调用.mp4 (64.99 MB), 17:49

  *   04 4_递归的意义:代码复用.mp4 (59.41 MB), 18:41

  *   05 5_递归的本质:函数调用.mp4 (29.83 MB), 08:21

  *   06 6_递归代码虽优雅,但性能差.mp4 (59.85 MB), 17:41

  *   07 7_一个经验带你轻松理解递归代码.mp4 (25.50 MB), 09:31

  *   08 8_【数组问题】也是可以用递归解决.mp4 (45.46 MB), 14:30

  *   09 9_递归求 n 的阶乘.mp4 (13.80 MB), 04:59

  *   10 10_为啥【尾递归】可以提升递归性能.mp4 (55.71 MB), 16:20

  *   11 11_链表具有天然的递归特点.mp4 (22.27 MB), 07:00

  *   12 12_三行代码优雅的【删除链表节点】.mp4 (43.93 MB), 15:11

  *   13 13_ 你会用递归【反转单链表】吗.mp4 (19.98 MB), 07:08

  *   14 14_练习:删除链表的倒数第N个节点.mp4 (26.33 MB), 09:10

  *   15 15_三行递归代码优雅的遍历二叉树.mp4 (80.25 MB), 26:43

  *   16 16_暴力美学算法:深度优先搜索(DFS).mp4 (11.80 MB), 04:14

  *   17 17_两个经验教你解决二叉树98%的问题.mp4 (56.62 MB), 18:13

  *   18 18_多次递归调用:递归处理多叉树.mp4 (20.18 MB), 07:17

  *   19 19_从具体场景中抽象出对应的数据结构.mp4 (50.86 MB), 17:00

  *   20 20_ DFS 可以解决 98%的图论问题.mp4 (27.85 MB), 08:25

  *   21 21_快速排序:数组问题抽象成二叉树.mp4 (59.32 MB), 19:12

  *   22 22_归并排序:数组问题抽象成二叉树.mp4 (47.30 MB), 15:37

  *   23 23_经典递归面试题:汉诺塔问题.mp4 (66.03 MB), 20:02

  *   24 25_递归实现的DFS体现了【回溯算法思想】.mp4 (37.61 MB), 11:29

  *   25 26_抽象能力很重要:全排列问题.mp4 (171.79 MB), 45:29

  *   26 27_动态规划和回溯算法之间的纠葛.mp4 (127.93 MB), 41:54