互联网
类型
可以朗读
语音朗读
167千字
字数
2022-10-01
发行日期
展开全部
主编推荐语
本书深入阐述关键算法、数据结构、数据类型的基本原理。
内容简介
在编写代码时,每位软件专业人士都需要对算法有充分的理解。在这本实用性极强的著作中,作者对一些关键的算法进行了详实的描述,可以有效地提高用各种语言编写代码的质量。
软件开发人员、测试人员和维护人员可以在本书中学会如何使用算法,以创造性的方式解决计算性问题。
本书各章内容前后衔接紧密,环环相扣,用醒目的图表有条不紊地展示了一些核心概念,并对书中介绍的每种算法的性能进行了分析。
目录
- 版权信息
- 版权声明
- 内容提要
- O'Reilly Media,Inc.介绍
- 业界评论
- 序
- 前言
- 服务与支持
- 第1章 解决问题
- 1.1 什么是算法?
- 1.2 在一个任意的列表中查找最大值
- 1.3 对关键操作进行计数
- 1.4 可以预测算法性能的模型
- 1.5 在一个随机列表中查找两个最大值
- 1.6 锦标赛算法
- 1.7 时间复杂度和空间复杂度
- 1.8 总结
- 1.9 挑战练习
- 第2章 分析算法
- 2.1 使用实验模型预测性能
- 2.2 乘法可以更快
- 2.3 性能分类
- 2.4 渐进性分析
- 2.5 对所有操作进行计数
- 2.6 对所有字节进行计数
- 2.7 关上一扇门,打开另一扇门
- 2.8 二分数组搜索
- 2.9 几乎和π一样简单
- 2.10 一石二鸟
- 2.11 综述
- 2.12 曲线拟合与上下界的比较
- 2.13 总结
- 2.14 挑战练习
- 第3章 更好的散列,更适意的人生
- 3.1 值与键相关联
- 3.2 散列函数和散列码
- 3.3 (key,value)对的可散列结构
- 3.4 使用线性探查法检测和解决冲突
- 3.5 用链表实现分离链表
- 3.6 从链表中删除一个数据项
- 3.7 评估
- 3.8 增长的散列表
- 3.9 分析动态散列表的性能
- 3.10 完美散列
- 3.11 对(key,value)对进行迭代
- 3.12 总结
- 3.13 挑战练习
- 第4章 堆起来!
- 4.1 最大二叉堆
- 4.2 插入(value,priority)对
- 4.3 删除具有最高优先级的值
- 4.4 用数组表示二叉堆
- 4.5 实现上浮和下沉
- 4.6 总结
- 4.7 挑战练习
- 第5章 深入浅出论排序!
- 5.1 交换排序
- 5.2 选择排序
- 5.3 平方时间级排序算法的剖析
- 5.4 分析插入排序和选择排序的性能
- 5.5 递归和分治法
- 5.6 归并排序
- 5.7 快速排序
- 5.8 堆排序
- 5.9 O(NlogN)等级算法的性能比较
- 5.10 Tim排序
- 5.11 总结
- 5.12 挑战练习
- 第6章 二叉树:掌上世界的无限可能
- 6.1 基础知识
- 6.2 二叉查找树
- 6.3 在二叉查找树中搜索值
- 6.4 从二叉查找树删除值
- 6.5 遍历二叉查找树
- 6.6 分析二叉查找树的性能
- 6.7 平衡二叉树
- 6.8 分析平衡二叉树的性能
- 6.9 使用二叉树作为(key,value)符号表
- 6.10 使用二叉树作为优先队列
- 6.11 总结
- 6.12 挑战练习
- 第7章 图:连得上的才是好的!
- 7.1 图高效地存储了实用的信息
- 7.2 使用深度优先搜索解决迷宫问题
- 7.3 广度优先搜索提供了一种不同的搜索算法
- 7.4 有向图
- 7.5 具有边权重的图
- 7.6 迪杰斯特拉算法
- 7.7 全顶点对的最短路径
- 7.8 弗洛伊德-沃歇尔算法
- 7.9 总结
- 7.10 挑战练习
- 第8章 综述
- 8.1 Python的内置数据类型
- 8.2 在Python中实现堆栈
- 8.3 在Python中实现队列
- 8.4 堆和优先队列的实现
- 8.5 进一步的探索
- 关于作者
- 关于封面
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。