微信扫一扫,移动浏览光盘
简介
本书以java语言为基础,讨论了数据结构的线性结构和非线性结构及其实现,全书以java语言作为数据结构的算法描述。
本书概念表述严谨,逻辑推理严密。既可以作为计算机或信息类及相关专业的教材,也可供学习数据结构及其算法的java语言程序设计者参考。
本书主要内容
◆数据结构概论
◆线性表
◆栈和队列
◆数组和广义表
◆树和图
◆排序和查找
◆动态存储管理
◆文件管理
目录
第1章 数据结构概论
1.1 什么是数据结构
1.2 数据结构的发展史及其在计算机科学中的地位
1.3 基本概念和术语
1.4 抽象数据类型和数据结构
1.5 学习数据结构的意义
1.6 java语言概述
1.6.1 面向对象的程序设计
1.6.2 变量和对象
1.6.3 流程控制
1.6.4 类和修饰符
1.7 算法
1.7.1 算法及其性质
1.7.2 算法描述的分析
思考和练习
第2章 线性表
2.1 线性表类型的定义
2.2 线性表的顺序表示和实现
2.3 线性表的链式存储结构
2.3.1 单向链表
.2.3.2 单链表的基本运算
2.3.3 循环链表
2.3.4 双链表
2.4 链表应用举例
2.5 顺序表和链表的比较
思考和练习
第3章 栈和队列
3.1 栈
3.1.1 栈定义及基本概念
3.1.2 顺序栈
3.1.3 链式栈
3.1.4 顺序栈和链式栈的比较
3.1.5 栈的应用举例
3.2 队列
3.2.1 队列定义及基本概念
3.2.2 顺序队列
3.2.3 链式队列
3.2.4 队列的应用
思考和练习
第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 广义表的存储
思考和练习
第5章 树
5.1 树的概念
5.1.1 树的定义
5.1.2 基本术语
5.2 二叉树的定义
5.3 二叉树的性质
5.3.1 二叉树性质
5.3.2 二叉树的抽象数据类型
5.4 二叉树的存储结构
5.4.1 二叉树的顺序存储结构
5.4.2 二叉树的链接存储结构
5.4.3 二叉树的实现举例
5.5 二叉树的遍历
5.5.1 二叉树的前序遍历
5.5.2 二叉树的中序遍历
5.5.3 二叉树的后序遍历
5.5.4 二叉树的层次遍历
5.6 线索二叉树
5.6.1 二叉树的线索化
5.6.2 线索二叉树上的运算
5.7 树和二叉树的转换及树的存储结构
5.7.1 树转换为二叉树
5.7.2 二叉树还原为树
5.7.3 森林转换为二叉树
5.7.4 树的遍历
5.7.5 森林的遍历
5.7.6 树的存储结构
5.8 哈夫曼树及其应用
5.8.1 哈夫曼树的基本概念
5.8.2 哈夫曼树在编码问题中的应用
思考和练习
第6章 图
6.1 图的基本概念
6.1.1 图的定义
6.1.2 常用术语
6.2 图的存储结构
6.2.1 邻接矩阵表示法
6.2.2 邻接表表示法
6.2.3 关联矩阵
6.3 图的遍历
6.3.1 深度优先搜索遍历
6.3.2 广度优先搜索遍历
6.4 最小生成树
6.4.1 生成树
6.4.2 最小生成树的生成
6.5 最短路径和拓扑排序
6.5.1 最短路径
6.5.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.3 交换排序
7.3.1 冒泡排序
7.3.2 快速排序
7.4 选择排序
7.4.1 直接选择排序
7.4.2 堆排序
7.5 归并排序
7.6 外部排序
7.6.1 辅助存储器的存取
7.6.2 外部排序的方法
7.7 各种内排序方法的比较和选择
思考和练习
第8章 查找
8.1 基本概念
8.2 线性表查找
8.2.1 顺序查找
8.2.2 分查找
8.2.3 分块查找
8.3 二叉排序树
8.4 b树
8.5 散列技术
思考和练习
第9章 动态存储管理
9.1 概述
9.2 内存分配与回收策略
9.3 可利用空间的分配方法
9.4 存储紧缩
思考和练习
第10章 文件管理
10.1 文件的基本概念
10.1.1 文件定义
10.1.2 文件逻辑结构及操作
10.2 文件的分类
10.2.1 顺序文件
10.2.2 索引文件
10.2.3 直接存取文件(散列文件)
10.2.4 多关键字文件
10.3 文件的存储
10.3.1 磁盘
10.3.2 磁带
思考和练习
参考文献
1.1 什么是数据结构
1.2 数据结构的发展史及其在计算机科学中的地位
1.3 基本概念和术语
1.4 抽象数据类型和数据结构
1.5 学习数据结构的意义
1.6 java语言概述
1.6.1 面向对象的程序设计
1.6.2 变量和对象
1.6.3 流程控制
1.6.4 类和修饰符
1.7 算法
1.7.1 算法及其性质
1.7.2 算法描述的分析
思考和练习
第2章 线性表
2.1 线性表类型的定义
2.2 线性表的顺序表示和实现
2.3 线性表的链式存储结构
2.3.1 单向链表
.2.3.2 单链表的基本运算
2.3.3 循环链表
2.3.4 双链表
2.4 链表应用举例
2.5 顺序表和链表的比较
思考和练习
第3章 栈和队列
3.1 栈
3.1.1 栈定义及基本概念
3.1.2 顺序栈
3.1.3 链式栈
3.1.4 顺序栈和链式栈的比较
3.1.5 栈的应用举例
3.2 队列
3.2.1 队列定义及基本概念
3.2.2 顺序队列
3.2.3 链式队列
3.2.4 队列的应用
思考和练习
第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 广义表的存储
思考和练习
第5章 树
5.1 树的概念
5.1.1 树的定义
5.1.2 基本术语
5.2 二叉树的定义
5.3 二叉树的性质
5.3.1 二叉树性质
5.3.2 二叉树的抽象数据类型
5.4 二叉树的存储结构
5.4.1 二叉树的顺序存储结构
5.4.2 二叉树的链接存储结构
5.4.3 二叉树的实现举例
5.5 二叉树的遍历
5.5.1 二叉树的前序遍历
5.5.2 二叉树的中序遍历
5.5.3 二叉树的后序遍历
5.5.4 二叉树的层次遍历
5.6 线索二叉树
5.6.1 二叉树的线索化
5.6.2 线索二叉树上的运算
5.7 树和二叉树的转换及树的存储结构
5.7.1 树转换为二叉树
5.7.2 二叉树还原为树
5.7.3 森林转换为二叉树
5.7.4 树的遍历
5.7.5 森林的遍历
5.7.6 树的存储结构
5.8 哈夫曼树及其应用
5.8.1 哈夫曼树的基本概念
5.8.2 哈夫曼树在编码问题中的应用
思考和练习
第6章 图
6.1 图的基本概念
6.1.1 图的定义
6.1.2 常用术语
6.2 图的存储结构
6.2.1 邻接矩阵表示法
6.2.2 邻接表表示法
6.2.3 关联矩阵
6.3 图的遍历
6.3.1 深度优先搜索遍历
6.3.2 广度优先搜索遍历
6.4 最小生成树
6.4.1 生成树
6.4.2 最小生成树的生成
6.5 最短路径和拓扑排序
6.5.1 最短路径
6.5.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.3 交换排序
7.3.1 冒泡排序
7.3.2 快速排序
7.4 选择排序
7.4.1 直接选择排序
7.4.2 堆排序
7.5 归并排序
7.6 外部排序
7.6.1 辅助存储器的存取
7.6.2 外部排序的方法
7.7 各种内排序方法的比较和选择
思考和练习
第8章 查找
8.1 基本概念
8.2 线性表查找
8.2.1 顺序查找
8.2.2 分查找
8.2.3 分块查找
8.3 二叉排序树
8.4 b树
8.5 散列技术
思考和练习
第9章 动态存储管理
9.1 概述
9.2 内存分配与回收策略
9.3 可利用空间的分配方法
9.4 存储紧缩
思考和练习
第10章 文件管理
10.1 文件的基本概念
10.1.1 文件定义
10.1.2 文件逻辑结构及操作
10.2 文件的分类
10.2.1 顺序文件
10.2.2 索引文件
10.2.3 直接存取文件(散列文件)
10.2.4 多关键字文件
10.3 文件的存储
10.3.1 磁盘
10.3.2 磁带
思考和练习
参考文献
数据结构与算法分析:Java版
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×