漫画算法python篇pdf_漫画算法:小灰的算法之旅(Python篇)(全彩)

第1章 算法概述 / 1

1.1 算法和数据结构  / 1

1.1.1 小灰和大黄 / 1

1.1.2 什么是算法 / 3

1.1.3 什么是数据结构 / 7

1.2 时间复杂度 / 8

1.2.1 算法的好与坏 / 8

1.2.2 基本操作执行次数 / 10

1.2.3 渐进时间复杂度 / 12

1.2.4 时间复杂度的巨大差异 / 15

1.3 空间复杂度 / 16

1.3.1 什么是空间复杂度 / 16

1.3.2 空间复杂度的计算 / 19

1.3.3 时间与空间的取舍 / 21

1.4 小结  / 22

第2章 数据结构基础  / 23

2.1 什么是数组 / 23

2.1.1 初识数组 / 23

2.1.2 数组的基本操作  / 26

2.1.3 数组的优势和劣势 / 32

2.2 什么是链表 / 32

2.2.1 “正规军”和“地下党” / 32

2.2.2 链表的基本操作  / 35

2.2.3 数组VS链表 / 40

2.3 栈和队列 / 41

2.3.1 物理结构和逻辑结构 / 41

2.3.2 什么是栈 / 42

2.3.3 栈的基本操作  / 43

2.3.4 什么是队列 / 44

2.3.5 队列的基本操作 / 45

2.3.6 栈和队列的应用 / 48

2.4 神奇的哈希表  / 50

2.4.1 为什么需要哈希表 / 50

2.4.2 哈希函数 / 52

2.4.3 哈希表的读写操作 / 53

2.5 小结 / 56

第3章 树 / 58

3.1 树和二叉树 / 58

3.1.1 什么是树 / 58

3.1.2 什么是二叉树 / 61

3.1.3 二叉树的应用 / 64

3.2 二叉树的遍历 / 68

3.2.1 为什么要研究遍历 / 68

3.2.2 深度优先遍历  / 70

3.2.3 广度优先遍历 / 80

3.3 什么是二叉堆 / 83

3.3.1 初识二叉堆 / 83

3.3.2 二叉堆的自我调整 / 86

3.3.3 二叉堆的代码实现  / 91

3.4 什么是优先队列 / 93

3.4.1 优先队列的特点 / 93

3.4.2 优先队列的实现  / 95

3.5 小结  / 98

第4章 排序算法 / 100

4.1 引言 / 100

4.2 什么是冒泡排序 / 102

4.2.1 初识冒泡排序 / 102

4.2.2 冒泡排序的优化 / 105

4.2.3 鸡尾酒排序 / 108

4.3 什么是快速排序  / 112

4.3.1 初识快速排序 / 112

4.3.2 基准元素的选择 / 114

4.3.3 元素的交换 / 116

4.3.4 单边循环法 / 118

4.3.5 非递归实现 / 121

4.4 什么是堆排序  / 123

4.4.1 传说中的堆排序 / 123

4.4.2 堆排序的代码实现 / 127

4.5 计数排序和桶排序 / 129

4.5.1 线性时间的排序 / 129

4.5.2 初识计数排序 / 130

4.5.3 计数排序的优化 / 132

4.5.4 什么是桶排序 / 137

4.6 小结 / 140

第5章 面试中的算法 / 141

5.1 踌躇满志的小灰 / 141

5.2 如何判断链表有环 / 142

5.2.1 一场与链表相关的面试 / 142

5.2.2 解题思路 / 146

5.2.3 问题扩展  / 148

5.3 最小栈的实现 / 151

5.3.1 一场关于栈的面试 / 151

5.3.2 解题思路 / 153

5.4 如何求出最大公约数  / 156

5.4.1 一场求最大公约数的面试 / 156

5.4.2 解题思路 / 158

5.5 如何判断一个数是否为2的整数次幂  / 162

5.5.1 一场很“2”的面试 / 162

5.5.2 解题思路 / 165

5.6 无序数组排序后的最大相邻差  / 167

5.6.1 一道奇葩的面试题 / 167

5.6.2 解题思路  / 168

5.7 如何用栈实现队列 / 173

5.7.1 又是一道关于栈的面试题 / 173

5.7.2 解题思路 / 174

5.8 寻找全排列的下一个数 / 179

5.8.1 一道关于数字的题目 / 179

5.8.2 解题思路 / 181

5.9 删去k个数字后的最小值 / 184

5.9.1 又是一道关于数字的题目 / 184

5.9.2 解题思路 / 186

5.10 如何找到两个数组的中位数 / 192

5.10.1 有关中位数的问题 / 192

5.10.2 解题思路 / 194

5.11 如何求解金矿问题 / 200

5.11.1 一个关于财富自由的问题 / 200

5.11.2 解题思路 / 202

5.12 寻找缺失的整数 / 211

5.12.1 “五行”缺一个整数 / 211

5.12.2 问题扩展 / 213

第6章 算法的实际应用 / 218

6.1 小灰上班的第1天 / 218

6.2 Bitmap的巧用 / 220

6.2.1 一个关于用户标签的需求 / 220

6.2.2 用算法解决问题 / 222

6.3 LRU算法的应用 / 228

6.3.1 一个关于用户信息的需求 / 228

6.3.2 用算法解决问题 / 231

6.4 什么是A星寻路算法  / 236

6.4.1 一个关于迷宫寻路的需求 / 236

6.4.2 用算法解决问题 / 238

6.5 如何实现红包算法 / 248

6.5.1 一个关于钱的需求 / 248

6.5.2 用算法解决问题 / 251

6.6 算法之路无止境  / 254

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值