技术教育社区
www.teccses.org

面向算法设计的数据结构(C++语言版)(第2版)

封面

作者:谢勰

页数:299

出版社:清华大学出版社

出版日期:2021

ISBN:9787302590774

电子书格式:pdf/epub/txt

内容简介

本书以算法分析为导向,以算法效率为准绳,着墨于抽象数据类型的选择、使用和组合,从而实现提升算法性能的第一目标,凸显“数据结构要为算法服务”的特色。本书基于抽象数据类型的观点来讲解数据结构,力图让读者学会以“积木式”组件方案快速、便捷、高效地构建程序,并在此基础上以迭代器和区间表示动态集合,给出更具一般性的泛型算法。本书代码采用简洁明晰的现代C++语言描述,尽量吸收第一语言标准,力求紧跟程序设计语言的时代脉搏,并提供了便于维护的在线形式。全书内容组织以标准模板库(STL)为纲,涵盖了常见的数据结构,并给出实际场景中的案例,真正体现学以致用。此外,本书还特别论及各种容器和泛型算法的时空性能,方便读者对设计方案给出渐近分析。

作者简介

姓名:谢勰 单位:西安邮电大学 职务、职称:副教授 性别:男 年龄:39 主要从事算法与数据结构相关课程的教学,多年以来承担《信息安全算法设计》、《信息论基础》和《现代编码技术》等多门课程。作为副主编所编写教材《离散信息论基础》获陕西普通高等学校优秀教材一等奖并入选“十二五”普通高等教育本科国家级规划教材,翻译出版了算法设计领域的经典著作《算法设计指南》(The Algorithm Design Manual),以信息安全专业为试点编写了较为新颖的《面向算法设计数据结构(C++语言版)》。积极将算法与数学理论成果实用化,带队多次荣获美国大学生数学建模竞赛(MCM)一等奖。

本书特色

以算法分析为导向,以算法效率为准绳,着墨于抽象数据类型的选择、使用和组合,从而实现提升算法性能的终极目标,凸显“数据结构要为算法服务”的特色

目录

第1章 算法
1.1 概述
1.2 [实例]二分查找
1.3 程序性能与算法分析
1.3.1 运行时间
1.3.2 占用空间
1.4 渐近记号
1.5 [技巧]阶的快速比较
1.5.1 加和型无穷大量阶的比较
1.5.2 乘积型无穷大量阶的比较
1.5.3 对数型无穷大量阶的比较
1.6 习题

第2章 抽象数据类型
2.1 概述
2.2 [实例]查找问题
2.2.1 缺点一:长度受限制
2.2.2 缺点二:有序则难变
2.2.3 缺点三:查变难两全
2.2.4 抽象数据类型视角
2.3 集合
2.4 功能与实现
2.4.1 向量简介
2.4.2 有序向量实现
2.4.3 无序向量实现
2.4.4 对比
2.5 [技巧]组装使用
2.6 STL容器一览
2.7 设计模式
2.7.1 迭代器
2.7.2 适配器
2.7.3 组合
2.8 习题

第3章 向量
3.1 概述
3.2 [使用]vector
3.3 vector的实现原理
3.4 加倍技术
3.5 [技巧]物理存储与进制换算
3.5.1 一维数组
3.5.2 二维数组
3.5.3 多维向量
3.6 [技巧]自然数映射与下标
3.7 [实例]矩阵的向量实现
3.7.1 矩阵的简易实现
3.7.2 稀疏矩阵
3.8 习题

第4章 递归
4.1 概述
4.2 [技巧]递归设计与归纳证明
4.3 递归与进程模型
4.4 递归算法性能分析
4.5 [实例]排列生成器
4.5.1 利用vector传值实现
4.5.2 利用vector引用实现
4.6 [实例]乐高铺砖
4.7 习题
……

第5章 栈
第6章 队列
第7章 链
第8章 二叉树
第9章 集合
第10章 优先级队列
第11章 图
第12章 实验

附录
参考文献

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《面向算法设计的数据结构(C++语言版)(第2版)》
Article link:https://www.teccses.org/1333179.html