





定价:35元
印次:1-1
ISBN:9787302307020
出版日期:2013.01.01
印刷日期:2013.01.09
图书责编:郑寅堃
图书分类:教材
本书是为全国高等院校计算机及相关专业开设数据结构课程而精心编著的一本实用教材。本书按照面向对象的程序设计方法,采用目前广泛使用的Java语言描述各种数据结构和运算方法,使得一种数据结构对应一种操作接口,进而通过不同的存储类型来实现。全书共分为11章,依次为绪论、集合、线性表、稀疏矩阵和广义表、栈和队列、树和二叉树、常用二叉树、图、图的应用、查找、排序。 全书内容丰富实用,结构层次分明,叙述简明易懂,运算方法分析透彻,所有算法描述都能够直接上机运行。这些显著特点都是作者多年来教材编写和教学经验的结晶,已经得到广大读者的认可。 本书可作为普通高等院校计算机及相关专业“数据结构”课程的教材或教学参考书。 为了配合使用本书,作者同时编写了相配套的《数据结构实用教程(Java语言描述)习题参考解答》一书,一并出版。
徐孝凯:一直从事全国电大系统的计算机教学和研究工作,负责C++、Java、数据结构、数据库、操作系统等课程的日常教学、科研和管理工作,在清华大学出版社和其他出版社出版过多本计算机教材,受到社会的好评。
前 言 数据结构是普通院校计算机及相关专业的一门必修核心课程,主要讨论和研究从现实世界中抽象出来的数据的各种逻辑结构、在计算机中的存储结构,以及对其进行的各种处理运算的方法和算法。通过学习这门课程,使学生掌握如何利用计算机对数据进行有效的组织、存储和运算,为进一步学好后续各门计算机专业课程和进行软件开发打下良好的 基础。 数据的逻辑结构大致分为集合结构、线性结构、树型结构和图型结构4种。数据在计算机中的存储结构大致分为顺序结构、链接结构、索引结构和散列结构4种。对数据进行的各种运算主要有插入运算、删除运算、查找运算、遍历运算、排序运算等。 开设数据结构课程需要借助一种计算机程序设计语言进行,在目前广泛使用的程序设计语言中,Java程序设计语言是最流行和面向对象程度最完善的语言。利用Java语言中的接口能够准确地描述任一种数据结构的逻辑定义和运算,利用任一种存储结构所定义的存储类型能够有效地实现接口。总之,采用面向对象的程序设计方法和使用Java语言讲授数据结构课程正在逐渐兴起。 本书采用面向对象的Java语言描述数据结构及其算法,是作者多年来教材编写和教学经验的结晶,是对以往利用计算机语言编写数据结构教材的丰富、发展和完善。全书共分为11章,分别为绪论、集合、线性表、稀疏矩阵和广义表、栈和队列、树和二叉树、常用二叉树、图、图的应用、查找、排序。在第1章中,结合数据表实例开门见山地给出了数据的4种逻辑结构,接着给出了算法的描述和评价等内容,为展开叙述后续章节的内容奠定基础。在第2章中,介绍了集合的抽象数据类型和接口,以及在顺序和链接存储结构下...
第1章 绪论 1
1.1 基本概念 1
1.2 算法描述 11
1.3 算法评价 13
第2章 集合 20
2.1 集合的定义和运算 20
2.1.1 集合的定义 20
2.1.2 集合的抽象数据类型 20
2.1.3 集合运算举例 21
2.2 集合的顺序存储结构和操作实现 23
2.3 集合的链接存储结构和操作实现 30
2.3.1 链接存储的概念 30
2.3.2 链接集合类的定义和实现 33
2.4 集合应用举例 39
第3章 线性表 47
3.1 线性表的定义和运算 47
3.1.1 线性表的定义 47
3.1.2 线性表的抽象数据类型 48
3.1.3 线性表运算举例 49
3.2 线性表的顺序存储结构和操作实现 52
3.3 有序线性表的定义和实现 60
3.4 链接存储的一般概念和方法 65
3.5 线性表的链接存储结构和操作实现 70
3.6 有序线性表的链接存储结构和操作实现 76
3.7 线性表应用举例——多项式计算 78
3.7.1 多项式表示与求值 78
3.7.2 两个多项式相加 82
第4章 稀疏矩阵和广义表 86
4.1 稀疏矩阵 86
4.1.1 稀疏矩阵的定义 86
4.1.2 稀疏矩阵的转置运算 88
4.1.3 稀疏矩阵的加法运算 90
4.1.4 使用稀疏矩阵的程序举例 92
4.2 广义表 94
4.2.1 广义表的定义 94
4.2.2 广义表的...