数据结构

数据结构

朱战立, 编著

出版社:清华大学出版社

年代:2015

定价:40.0

书籍简介:

本书系统地介绍了各种类型的数据结构和查找、排序的各种方法。对于每一种类型的数据结构,都详细阐述了基本概念、各种不同的存储结构和不同存储结构上一些主要操作的实现算法,并给出了许多设计实例帮助读者理解。

书籍目录:

第1章绪论

1.1数据结构的基本概念

1.2抽象数据类型

1.3算法和算法的时间复杂度

1.3.1算法

1.3.2算法设计目标

1.3.3算法的时间复杂度分析

1.4算法的空间复杂度分析

1.5Java语言的工具包

习题

第2章线性表

2.1线性表概述

2.1.1线性表的定义

2.1.2线性表抽象数据类型

2.2顺序表

2.2.1顺序表存储结构

2.2.2顺序表类

2.2.3顺序表的效率分析

2.2.4顺序表类应用举例

2.3单链表

2.3.1单链表的结构

2.3.2结点类

2.3.3单链表类

2.3.4单链表的效率分析

2.3.5顺序表和单链表的比较

2.3.6单链表应用举例

2.4循环单链表

2.5双向链表

2.6仿真链表

2.7面向对象的软件设计方法

2.8设计举例

2.8.1顺序表算法设计举例

2.8.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.3队列

3.3.1队列的基本概念

3.3.2队列抽象数据类型

3.3.3顺序队列

3.3.4顺序循环队列类

3.3.5链式队列

3.3.6队列的应用

3.4优先级队列

3.4.1顺序优先级队列类

3.4.2优先级队列的应用

习题

第4章串

4.1串概述

4.1.1串的基本概念

4.1.2串的抽象数据类型

4.2串的存储结构

4.3串类

4.3.1MyString类

4.3.2MyString类的测试

4.3.3MyStringBuffer类

4.3.4MyStringBuffef类的测试

4.4串的模式匹配算法

4.4.1Brute—Force算法

4.4.2KMP算法

4.4.3Brute—Force算法和KMP算法的运行效率比较

习题

第5章数组、集合和矩阵

5.1数组

5.1.1数组的定义

5.1.2数组的实现机制

5.1.3数组抽象数据类型

5.1.4Java语言支持的数组功能

5.2向量类

5.3集合

5.3.1集合的概念

5.3.2集合抽象数据类型

5.3.3集合类

5.4矩阵类

5.5特殊矩阵

5.5.1特殊矩阵的压缩存储

5.5.2n阶对称矩阵类

5.6稀疏矩阵

5.6.1稀疏矩阵的压缩存储

5.6.2数组结构的稀疏矩阵类

5.6.3三元组链表

习题

第6章递归算法

6.1递归的概念

6.2递归算法的执行过程

6.3递归算法的设计方法

6.4递归过程和运行时栈

6.5递归算法的效率分析

6.6递归算法到非递归算法的转换

6.7设计举例

6.7.1一般递归函数设计举例

6.7.2回溯法及设计举例

习题

第7章树和二叉树

7.1树

7.1.1树的定义

7.1.2树的表示方法

7.1.3树的抽象数据类型

7.1.4树的存储结构

7.2二叉树

7.2.1二叉树的定义

7.2.2二叉树抽象数据类型

7.2.3二叉树的性质

7.2.4二叉树的存储结构

7.3以结点类为基础的二叉树设计

7.3.1二叉树结点类

7.3.2二叉树的遍历

7.3.3二叉树遍历的应用

7.3.4应用举例

7.3.5非递归的二叉树遍历算法

7.4二叉树类

7.5二叉树的分步遍历

7.5.1二叉树游标类

7.5.2二叉树中序游标类

7.5.3二叉树层序游标类

7.6线索二叉树

7.7哈夫曼树

7.7.1哈夫曼树的基本概念

7.7.2哈夫曼编码问题

7.7.3哈夫曼编码的软件设计

7.8等价问题

7.9树与二叉树的转换

7.10树的遍历

习题

第8章图

8.1图概述

8.1.1图的基本概念

8.1.2图的抽象数据类型

8.2图的存储结构

8.2.1图的邻接矩阵存储结构

8.2.2图的邻接表存储结构

8.3邻接矩阵图类

8.4图的遍历

8.4.1图的深度和广度优先遍历算法

8.4.2图的深度和广度优先遍历成员函数设计

8.5最小生成树

8.5.1最小生成树的基本概念

8.5.2普里姆算法

8.5.3克鲁斯卡尔算法

8.6最短路径

8.6.1最短路径的基本概念

8.6.2从一个结点到其余各结点的最短路径

8.6.3每对结点之间的最短路径

8.7拓扑排序

8.8关键路径

习越

第9章排序

9.1排序的基本概念

9.2插入排序

9.2.1直接插入排序

9.2.2希尔排序

9.3选择排序

9.3.1直接选择排序

9.3.2堆排序

9.4交换排序

9.4.1冒泡排序

9.4.2快速排序

9.5归并排序

9.6基数排序

9.7各种排序算法的性能比较

习题

第10章查找

10.1查找的基本概念

10.2静态查找

10.2.1在无序序列中查找

10.2.2在有序序列中查找

10.2.3索引

10.3动态查找

10.3.1二叉排序树

10.3.2B_树

习题

第11章哈希表

11.1哈希表的基本概念

11.1.1哈希表的基本构造方法

11.1.2建立哈希表的关键问题

11.2哈希函数构造方法

11.3哈希冲突解决方法

11.3.1开放定址法

11.3.2链表法

11.4哈希表类设计

11.4.1哈希表项类

11.4.2哈希表类

11.4.3应用程序设计举例

习题

附录AJava语言工具包实现的常用数据结构

附录B上机实习内容规范和实习报告范例

B.1上机实习内容规范

B.2上机实习报告范例——约瑟夫环问题

附录C部分习题解答

参考文献

内容摘要:

《21世纪高等学校规划教材·计算机科学与技术·数据结构:Java语言描述(第2版)》内容符合2009年公布的研究生新的入学统考大纲要求,内容主要包括线性表、堆栈、队列、串、数组、向量、集合、矩阵、树、二叉树、图、排序、查找、哈希表以及递归,对于每一种类型的数据结构,都详细阐述了基本概念、各种不同的存储结构和不同存储结构上一些主要操作的实现算法,并给出了许多设计实例帮助读者理解。面向对象方法是目前软件设计的主流方法,《21世纪高等学校规划教材·计算机科学与技术·数据结构:Java语言描述(第2版)》用面向对象思想组织全部材料,采用Java语言作为算法描述语言。《21世纪高等学校规划教材·计算机科学与技术·数据结构:Java语言描述(第2版)》既可作为大专院校计算机等专业的教科书,也可作为从事计算机应用的工程技术人员的自学参考。

编辑推荐:

《21世纪高等学校规划教材·计算机科学与技术·数据结构:Java语言描述(第2版)》编辑推荐:教学目标明确,注重理论与实践的结合;教学方法灵活,培养学生自主学习的能力;教学内容先进,反映了计算机学科的最新发展;教学模式完善,提供配套的教学资源解决方案。

书籍规格:

书籍详细信息
书名数据结构站内查询相似图书
9787302423324
如需购买下载《数据结构》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位清华大学出版社
版次2版印次1
定价(元)40.0语种简体中文
尺寸26 × 19装帧平装
页数印数

书籍信息归属:

数据结构是清华大学出版社于2016.出版的中图分类号为 TP312 ,TP311.12 的主题关于 C语言-程序设计-高等学校-教材 ,数据结构-高等学校-教材 的书籍。