Java语言描述 数据结构实用教程


Java语言描述 数据结构实用教程

文章插图
数据结构实用教程(Java语言描述)【Java语言描述 数据结构实用教程】《数据结构实用教程(Java语言描述)》是为全国高等院校计算机及相关专业开设数据结构课程而精心编着的一本实用教材 。
基本介绍书名:数据结构实用教程(Java语言描述)
作者:徐孝凯
ISBN:9787302307020
页数:331
定价:35元
出版社:清华大学出版社
出版时间:2013-1-1
装帧:平装
开本:16
版次:1
图书简介本书是为全国高等院校计算机及相关专业开设数据结构课程而精心编着的一本实用教材 。本书按照面向对象的程式设计方法,採用目前广泛使用的Java语言描述各种数据结构和运算方法,使得一种数据结构对应一种操作接口,进而通过不同的存储类型来实现 。全书共分为11章,依次为绪论、集合、线性表、稀疏矩阵和广义表、栈和伫列、树和二叉树、常用二叉树、图、图的套用、查找、排序 。全书内容丰富实用,结构层次分明,叙述简明易懂,运算方法分析透彻,所有算法描述都能够直接上机运行 。这些显着特点都是作者多年来教材编写和教学经验的结晶,已经得到广大读者的认可 。本书可作为普通高等院校计算机及相关专业“数据结构”课程的教材或教学参考书 。为了配合使用本书,作者同时编写了相配套的《数据结构实用教程(Java语言描述)习题参考解答》一书,一併出版 。图书目录第1章绪论 11.1基本概念 11.2算法描述 111.3算法评价 13第2章集合 202.1集合的定义和运算 202.1.1集合的定义 202.1.2集合的抽象数据类型 202.1.3集合运算举例 212.2集合的顺序存储结构和操作实现 232.3集合的连结存储结构和操作实现 302.3.1连结存储的概念 302.3.2连结集合类的定义和实现 332.4集合套用举例 39第3章线性表 473.1线性表的定义和运算 473.1.1线性表的定义 473.1.2线性表的抽象数据类型 483.1.3线性表运算举例 493.2线性表的顺序存储结构和操作实现 523.3有序线性表的定义和实现 603.4连结存储的一般概念和方法 653.5线性表的连结存储结构和操作实现 703.6有序线性表的连结存储结构和操作实现 763.7线性表套用举例——多项式计算 783.7.1多项式表示与求值 783.7.2两个多项式相加 82第4章稀疏矩阵和广义表 864.1稀疏矩阵 864.1.1稀疏矩阵的定义 864.1.2稀疏矩阵的转置运算 884.1.3稀疏矩阵的加法运算 904.1.4使用稀疏矩阵的程式举例 924.2广义表 944.2.1广义表的定义 944.2.2广义表的存储结构 964.2.3广义表类的定义 974.2.4广义表的运算 994.2.5简单程式举例 103第5章栈和伫列 1055.1栈的定义和运算 1055.2栈的顺序存储结构和操作实现 1065.3栈的连结存储结构和操作实现 1105.4栈的简单套用举例 1125.5算术表达式的计算 1165.6栈与递归 1245.7伫列 1335.7.1伫列的定义和运算 1335.7.2伫列的顺序存储结构和操作实现 1345.7.3伫列的连结存储结构和操作实现 139第6章树和二叉树 1416.1树的概念 1416.1.1树的定义 1416.1.2树的表示 1426.1.3树的基本术语 1426.1.4树的性质 1446.2二叉树 1456.2.1二叉树的定义 1456.2.2二叉树的性质 1456.2.3二叉树的抽象数据类型 1476.2.4二叉树的存储结构 1486.3二叉树遍历 1536.4二叉树的其他运算 1566.5调试二叉树算法举例 1606.6树的存储结构和运算 1616.6.1树的抽象数据类型 1616.6.2树的存储结构 1626.6.3树的运算 1666.6.4调试普通树算法举例 171第7章常用二叉树 1737.1二叉搜寻树 1737.1.1二叉搜寻树的定义 1737.1.2二叉搜寻树的抽象数据类型和连结存储类 1747.1.3二叉搜寻树的运算方法 1757.2堆 1817.2.1堆的定义 1817.2.2堆的接口类 1827.2.3堆的存储结构和顺序存储类 1827.2.4堆的运算 1847.3哈夫曼树 1897.3.1基本术语 1897.3.2构造哈夫曼树 1907.3.3哈夫曼编码 1937.4平衡二叉树 1957.4.1平衡二叉树的定义 1957.4.2平衡二叉树的调整 197第8章图 2028.1图的概念 2028.1.1图的定义 2028.1.2图的基本术语 2038.2图的存储结构 2058.2.1邻接矩阵 2058.2.2邻接表 2078.2.3边集数组 2088.3图的抽象数据类型和接口类 2098.4图的邻接矩阵和邻接表存储类 2108.5图的遍历 2148.5.1深度优先搜寻遍历 2148.5.2广度优先搜寻遍历 2178.5.3非连通图的遍历 2198.6对图的其他运算的算法 219第9章图的套用 2319.1图的生成树和最小生成树 2319.1.1生成树的概念 2319.1.2普里姆算法 2339.1.3克鲁斯卡尔算法 2379.2最短路径 2409.2.1最短路径的概念 2409.2.2从一顶点到其余各顶点的最短路径 2419.2.3每对顶点之间的最短路径 2469.3拓扑排序 2509.3.1拓扑排序的概念 2509.3.2拓扑排序算法 252 9.4关键路径 256第10章查找 26410.1查找的基本概念 26410.2顺序表查找 26510.2.1顺序查找 26510.2.2二分查找 26710.3索引查找 26910.3.1索引的概念 26910.3.2索引存储举例 27010.3.3索引查找算法 27310.3.4分块查找 27410.4散列查找 27610.4.1散列的概念 27610.4.2散列函式 27810.4.3处理冲突的方法 28010.4.4散列表的运算 28410.5B树查找 29310.5.1B_树的定义 29310.5.2B_树查找 29410.5.3B_树的插入 29610.5.4B_树的删除 29910.5.5定义B_树的类 30210.5.6B+树简介 304第11章排序 30611.1排序的基本概念 30611.2插入排序 30811.3选择排序 30911.3.1直接选择排序 30911.3.2堆排序 31011.4交换排序 31311.4.1气泡排序 31411.4.2快速排序 31511.5归併排序 31811.6外排序 32211.6.1外排序的概念 32211.6.2外排序算法 323参考文献 332