图书目录

目 录

第1 章 基础数据结构( 55 min)  1

1.1 数组  1

1.1.1 数组的基础知识   1

1.1.2 数组在实际开发中的应用  5

1.2 链表  6

1.2.1 链表的基础知识   6

1.2.2 链表在实际开发中的应用   14

1.3 队列   17

1.3.1 队列的基础知识   17

1.3.2 队列在实际开发中的应用   22

1.4 栈   23

1.4.1 栈的基础知识  23

1.4.2 栈在实际开发中的应用   25

1.5 基础数据结构中的差异   26

1.5.1 数据存储结构  26

1.5.2 数据访问方式  27

1.5.3 数据结构操作方式   27

1.5.4 数据应用场景  28

第2 章 基础算法( 55 min)   29

2.1 排序算法   29

2.1.1 冒泡排序   29

2.1.2 快速排序   33

2.1.3 归并排序   37

2.1.4 选择排序   41

2.1.5 堆排序  45

教学课件(PPT)及本书源码

2.2 搜索算法   52

2.2.1 线性搜索   52

2.2.2 二分搜索   55

第3 章 递归算法与动态规划( 23 min)  60

3.1 递归算法   60

3.1.1 图解递归算法  60

3.1.2 递归算法代码写作指导   64

3.1.3 递归算法实际应用介绍   66

3.2 动态规划   70

3.2.1 图解动态规划  70

3.2.2 动态规划代码写作指导   72

3.2.3 动态规划实际应用介绍   77

第4 章 搜索算法( 18 min)   80

4.1 深度优先搜索算法   80

4.1.1 图解深度优先搜索算法   80

4.1.2 深度优先搜索代码写作指导  81

4.1.3 深度优先搜索算法实际应用介绍   86

4.2 广度优先搜索算法   90

4.2.1 图解广度优先搜索算法   90

4.2.2 广度优先搜索算法代码写作指导   92

4.2.3 广度优先搜索算法实际应用介绍   100

第5 章 其他算法  105

5.1 分治算法  105

5.1.1 图解分治算法   105

5.1.2 分治算法代码写作指导  108

5.1.3 分治算法实际应用介绍  109

5.2 贪心算法  115

5.2.1 图解贪心算法   116

5.2.2 贪心算法代码写作指导  118

5.2.3 贪心算法实际应用介绍  120

5.3 哈希算法  121

5.3.1 图解哈希算法   122

5.3.2 哈希算法代码写作指导  124

5.3.3 哈希算法实际应用介绍  126

5.4 数值分析算法   130

5.4.1 插值和拟合   130

5.4.2 高斯消元法   143

5.4.3 牛顿法   144

5.5 机器学习算法   146

5.5.1 逻辑回归  146

5.5.2 梯度下降法   153

5.5.3 决策树   155

5.5.4 K 近邻算法  158

5.5.5 神经网络  164

第6 章 树( 19 min)  219

6.1 树的特点与基本术语   219

6.1.1 树的特点  219

6.1.2 树的基本术语   222

6.2 树的性质和关系  225

6.2.1 树的性质  225

6.2.2 树的关系  228

6.3 树的表示方法和存储结构   231

6.3.1 树的表示方法   231

6.3.2 树的存储结构   245

6.4 树的遍历方法和遍历顺序   249

6.4.1 前序遍历  250

6.4.2 中序遍历  254

6.4.3 后序遍历  260

6.4.4 层次遍历  264

6.5 特殊类型的树   269

6.5.1 二叉树的基本形态   269

6.5.2 多叉树的基本形态   287

第7 章 图( 19 min)  294

7.1 图的定义和基本概念   294

7.1.1 图的基本定义   294

7.1.2 图的基本概念   297

7.2 图的表示方法   309

7.2.1 邻接矩阵  310

7.2.2 邻接表   313

7.2.3 边集列表  316

7.2.4 关联矩阵  319

7.3 图的遍历操作   322

7.3.1 图深度优先搜索  322

7.3.2 图广度优先搜索  327

7.4 图论算法和应用  331

7.4.1 知识图谱与社会网络分析   331

7.4.2 搜索引擎  339

7.4.3 路径规划  345

参考文献 353