作者简介 目录 章数据结构基础 1.1面式思维和点式思维 1.2数据结构背景 1.3数据结构的应用案例 1.4数据结构基本概念 1.5逻辑结构分类 1.6存储结构分类 1.7数据结构基本操作 1.8算法和算法效率分析基础 1.9递归的概念和应用 1.10本章总结 习题 第2章线性表的构造与应用 2.1引言 2.2线性表的逻辑结构 2.3线性表的顺序存储 2.4线性表的链接存储 2.5线性表链接存储的变形 2.6线性表存储结构实现的选择标准 2.7线性表的应用案例 2.8本章总结 习题 第3章查找与排序程序设计初步 3.1引言 3.2查找的基本概念 3.3顺序查找技术 3.4排序基础和基本概念 3.5基本排序算法设计 3.5.1排序算法设计基础 3.5.2直接插入排序 3.5.3简单选择排序 3.5.4冒泡排序 3.5.5单链表插入排序 3.6排序的应用案例 3.7本章总结 习题 第4章栈的构造与应用 4.1引言 4.2栈的逻辑结构 4.3栈的顺序存储 4.4栈的链接存储 4.5栈的应用案例 4.6本章总结 习题 第5章队列的构造与应用 5.1引言 5.2队列的逻辑结构 5.3队列的顺序存储 5.4队列的环状顺序存储 5.5队列的链接存储 5.6队列的应用案例 5.7本章总结 习题 第6章串的构造与应用 6.1引言 6.2串的逻辑结构 6.3串的顺序存储 6.4串的链接存储 6.5串的索引存储 6.6串的应用案例 6.7本章总结 习题 第7章二维数组和广义表的构造与应用 7.1引言 7.2二维数组的逻辑结构 7.3二维数组的顺序存储 7.4特殊矩阵的压缩存储 7.5稀疏矩阵的压缩存储 7.6稀疏矩阵的十字链表存储 7.7二维数组的应用案例与程序设计 7.8广义表简介 7.9二维码简介 7.10本章总结 习题 第8章二叉树、树和森林的构造与应用 8.1引言 8.2二叉树及其逻辑结构 8.3二叉树的顺序存储 8.4二叉树的链接存储 8.5二叉树的构建和数据显示 8.6二叉树的根序遍历 8.6.1根序遍历的定义和递归算法实现 8.6.2根序遍历的非递归算法实现 8.7二叉树的层次遍历 8.8线索二叉树 8.8.1线索二叉树的定义、逻辑结构及存储结构 8.8.2线索二叉树的算法设计 8.9最优二叉树 8.10树、森林和二叉树的关系 8.11本章总结 习题 第9章图的构造与应用 9.1引言 9.2图的逻辑结构 9.3图的顺序存储 9.4图的链接存储 9.5遍历操作的程序设计 9.6公路网最短路径的研究 9.7AOV网与拓扑排序 9.8最小代价生成树的研究 9.8.1最小生成树的定义 9.8.2构造最小生成树的Prim算法 9.8.3构造最小生成树的Kruskal算法 9.9本章总结 习题 0章查找程序设计进阶 10.1引言 10.2有序表的折半查找和其他变形 10.2.1有序表的折半查找 10.2.2有序表的斐波那契查找和插值查找 10.2.3分块查找 10.3二叉排序树与相应的查找技术 10.4平衡二叉树与相应的查找技术 10.5哈希表结构的查找技术 10.5.1哈希表的定义和构成 10.5.2常见的哈希函数 10.5.3哈希表的查找过程和冲突解决方法 10.6字符串结构的快速查找 10.7查找的应用案例 10.8本章总结 习题 1章排序程序设计进阶 11.1引言 11.2折半插入排序技术 11.3希尔排序技术 11.4快速排序技术 11.5树形选择排序技术 11.6堆排序技术 11.7归并排序技术 11.8基数排序技术 11.9本章总结 习题 2章文件结构 12.1引言 12.2文件的逻辑结构 12.3顺序文件 12.4索引文件 12.5索引顺序存取方法文件 12.6虚拟存储存取方法文件 12.7直接存取文件 12.8多重表文件 12.9倒排文件 12.10文件的应用案例 12.11歌曲文件的数据结构 12.12本章总结 习题 附录数据结构程序设计源码涉及英语词汇或变量名中英对照表 参考文献 内容推荐 《用C++实现数据结构程序设计》系统地介绍了线性表、栈、队列、串、二维数组、树和森林、二叉树、图等八大结构,为后续课程操作系统、编译原理、数据库原理等课程奠定了良好的基础。本教材还结合查找和排序两大应用领域深入探讨了各类数据结构和程序设计技巧的综合应用,很后对文件系统进行了初步的介绍。书中提出了计算机编程“点式思维”的思想方法,通过基本的程序设计方式实现了大多数数据结构的基本操作。 |