数据结构第2版(C++版)

内容简介

[

  数据结构是计算机专业教学计划中的核心课程,也是计算机及相关专业考研和水平等级考试的必考科目。要从事和计算机科学与技术相关的工作,尤其是计算机应用领域的开发和研制工作,必须具备坚实的数据结构基础。在《数据结构(C++版 第2版)/普通高校本科计算机专业特色教材精选·算法与程序设计·》第1版成功的基础上,作者进行了修订,作为第2版,《数据结构(C++版 第2版)/普通高校本科计算机专业特色教材精选·算法与程序设计·》内容更贴合《计算机学科硕士研究生入学考试专业基础综合考试大纲》,可读性和实用性更强。  《数据结构(C++版 第2版)/普通高校本科计算机专业特色教材精选·算法与程序设计·》介绍了数据结构、算法以及抽象数据类型的概念,介绍了线性表、栈、队列和串、数组、树和二叉树、图等常用数据结构,讨论了常用的查找、排序和索引技术,给出了较多的数据结构的应用实例。限于篇幅,把贯穿所有数据结构的综合案例放在了网站上,供读者下载。  《数据结构(C++版 第2版)/普通高校本科计算机专业特色教材精选·算法与程序设计·》内容丰富,层次清晰,讲解深入浅出,可作为计算机及相关专业本、专科数据结构课程的教材,也可供从事计算机软件开发和应用的工程技术人员阅读、参考。

]

目录

第1章 绪论1.1 数据结构在程序设计中的作用1.2 本书讨论的主要内容1.3 数据结构的基本概念1.3.1 数据结构1.3.2 抽象数据类型1.4 算法及算法分析1.4.1 算法及其描述方法1.4.2 算法分析思想火花——好算法是反复努力和重新修正的结果习题1思考题1第2章 线性表2.1 线性表的逻辑结构2.1.1 线性表的定义2.1.2 线性表的抽象数据类型定义2.2 线性表的顺序存储结构及实现2.2.1 线性表的顺序存储结构——顺序表2.2.2 顺序表的实现2.3 线性表的链接存储结构及实现2.3.1 单链表2.3.2 循环链表2.3.3 双链表2.4 顺序表和链表的比较2.4.1 时间性能比较2.4.2 空间性能比较2.5 线性表的其他存储方法2.5.1 静态链表2.5.2 间接寻址2.6 应用举例2.6.1 顺序表的应用举例——大整数求和2.6.2 单链表的应用举例——一元多项式求和思想火花——好程序要能识别和处理各种输入习题2思考题2第3章 栈和队列3.1 栈3.1.1 栈的逻辑结构3.1.2 栈的顺序存储结构及实现3.1.3 栈的链接存储结构及实现3.1.4 顺序栈和链栈的比较3.2 队列3.2.1 队列的逻辑结构3.2.2 队列的顺序存储结构及实现3.2.3 队列的链接存储结构及实现3.2.4 循环队列和链队列的比较3.3 应用举例3.3.1 栈的应用举例——表达式求值3.3.2 队列的应用举例——火车车厢重排思想火花——直觉可能是错误的习题3思考题3第4章 字符串和多维数组4.1 字符串4.1.1 字符串的定义4.1.2 字符串的存储结构4.1.3 模式匹配4.2 多维数组4.2.1 数组的定义4.2.2 数组的存储结构与寻址4.3 矩阵的压缩存储4.3.1 对称矩阵的压缩存储4.3.2 三角矩阵的压缩存储4.3.3 对角矩阵的压缩存储4.3.4 稀疏矩阵的压缩存储4.4 应用举例4.4.1 字符串的应用举例——凯撒密码4.4.2 数组的应用举例——幻方思想火花——用常识性的思维去思考问题习题4思考题4第5章 树和二叉树5.1 树的逻辑结构5.1.1 树的定义和基本术语5.1.2 树的抽象数据类型定义5.1.3 树的遍历操作5.2 树的存储结构5.2.1 双亲表示法5.2.2 孩子表示法5.2.3 双亲孩子表示法5.2.4 孩子兄弟表示法5.3 二叉树的逻辑结构5.3.1 二叉树的定义5.3.2 二叉树的基本性质5.3.3 二叉树的抽象数据类型定义5.3.4 二叉树的遍历操作5.4 二叉树的存储结构及实现5.4.1 顺序存储结构5.4.2 二叉链表5.4.3 三叉链表5.4.4 线索链表5.5 二叉树遍历的非递归算法5.5.1 前序遍历非递归算法5.5.2 中序遍历非递归算法5.5.3 后序遍历非递归算法5.6 树、森林与二叉树的转换5.7 应用举例5.7.1 二叉树的应用举例——哈夫曼树及哈夫曼编码5.7.2 树的应用举例——八枚硬币问题思想火花——调试程序与魔术表演习题5思考题5第6章 图6.1 图的逻辑结构6.1.1 图的定义和基本术语6.1.2 图的抽象数据类型定义6.1.3 图的遍历操作6.2 图的存储结构及实现6.2.1 邻接矩阵6.2.2 邻接表6.2.3 十字链表6.2.4 邻接多重表6.2.5 邻接矩阵和邻接表的比较6.3 *小生成树6.3.1 MST性质6.3.2 Prim算法6.3.3 Kruskal算法6.4 *短路径6.4.1 Dijkstra算法6.4.2 Floyd算法6.5 有向无环图及其应用6.5.1 AOV网与拓扑排序6.5.2 AOE网与关键路径6.6 应用举例6.6.1 图的应用举例1——七桥问题6.6.2 图的应用举例2——七巧板涂色思想火花——数据模型在问题求解中的作用习题6思考题6第7章 查找技术7.1 概述7.1.1 查找的基本概念7.1.2 查找算法的性能7.2 线性表的查找技术7.2.1 顺序查找7.2.2 折半查找7.3 树表的查找技术7.3.1 二叉排序树7.3.2 平衡二叉树7.4 散列表的查找技术7.4.1 概述7.4.2 散列函数的设计7.4.3 处理冲突的方法7.4.4 散列查找的性能分析7.4.5 开散列表与闭散列表的比较思想火花——把注意力集中于主要因素,不要纠缠于噪声习题7思考题7第8章 排序技术8.1 概述8.1.1 排序的基本概念8.1.2 排序算法的性能8.2 插入排序8.2.1 直接插入排序8.2.2 希尔排序8.3 交换排序8.3.1 起泡排序8.3.2 快速排序8.4 选择排序8.4.1 简单选择排序8.4.2 堆排序8.5 归并排序8.5.1 二路归并排序的非递归实现8.5.2 二路归并排序的递归实现8.6 分配排序8.6.1 桶式排序8.6.2 基数排序8.7 各种排序方法的比较思想火花——学会“盒子以外的思考”习题8思考题8第9章 索引技术9.1 索引的基本概念9.2 线性索引技术9.2.1 稠密索引9.2.2 分块索引9.2.3 多重表9.2.4 倒排表9.3 树形索引9.3.1 2-3树9.3.2 B_树9.3.3 B+树思想火花——随处可见的索引习题9附录A 预备知识A.1 数学术语A.2 级数求和A.3 集合A.4 关系附录B C++语言基本语法B.1 程序结构B.2 数据类型B.3 控制语句B.4 输入与输出B.5 动态存储分配B.6 函数B.7 类与对象B.8 模板B.9 异常处理附录C 词汇索引参考文献

封面

数据结构第2版(C++版)

书名:数据结构第2版(C++版)

作者:王红梅

页数:293

定价:¥35.0

出版社:清华大学

出版日期:2011-06-01

ISBN:9787302244165

PDF电子书大小:80MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注