-
>
决战行测5000题(言语理解与表达)
-
>
软件性能测试.分析与调优实践之路
-
>
第一行代码Android
-
>
深度学习
-
>
Unreal Engine 4蓝图完全学习教程
-
>
深入理解计算机系统-原书第3版
-
>
Word/Excel PPT 2013办公应用从入门到精通-(附赠1DVD.含语音视频教学+办公模板+PDF电子书)
数据结构-(第3版)-(Java版) 版权信息
- ISBN:9787121136221
- 条形码:9787121136221 ; 978-7-121-13622-1
- 装帧:暂无
- 册数:暂无
- 重量:暂无
- 所属分类:>>
数据结构-(第3版)-(Java版) 本书特色
本书为普通高等教育“十一五”国家级规划教材。
本书全面系统地介绍数据结构的基础理论和算法设计方法,包括线性表、树、图等数据结构以及查找和排序算法。本书采用Java语言以面向对象方法设计并实现了全部的数据结构及算法。本书精选基础理论内容,重点是数据结构设计和算法设计,通过降低理论难度和抽象性,加强实践环节等措施,力求增强学生的理解能力和应用能力。内容涉及的广度和深度符合本科培养目标的要求。
本书可作为普通高等学校计算机及相近专业本科生的数据结构课程教材,也可作为从事计算机软件开发和工程应用人员的参考书。
数据结构-(第3版)-(Java版) 内容简介
《数据结构(Java版)(第3版)》:可作为普通高等学校计算机及相近专业本科的数据结构课程教材。“数据结构”课程内容多,概念抽象,理论深奥,递归算法难度较大,一直是计算机专业*难学的课程之一。《数据结构(Java版)(第3版)》精选基础理论内容,重点是数据结构设计和算法设计,通过降低理论难度和抽象性,加强实践环节等措施,进一步增强学生的理解能力和应用能力,力求取得较好的教学效果。
数据结构-(第3版)-(Java版) 目录
第1章 绪论 1
1.1 数据结构的基本概念 1
1.1.1 为什么要学习数据结构 1
1.1.2 什么是数据结构 1
1.1.3 数据类型与抽象数据类型 5
1.2 算法 7
1.2.1 什么是算法 7
1.2.2 算法分析 9
1.2.3 算法设计 11
1.3 Java开发运行环境 21
1.3.1 JDK 21
1.3.2 MyEclipse 26
习题1 33 目 录
第1章 绪论 1
1.1 数据结构的基本概念 1
1.1.1 为什么要学习数据结构 1
1.1.2 什么是数据结构 1
1.1.3 数据类型与抽象数据类型 5
1.2 算法 7
1.2.1 什么是算法 7
1.2.2 算法分析 9
1.2.3 算法设计 11
1.3 Java开发运行环境 21
1.3.1 JDK 21
1.3.2 MyEclipse 26
习题1 33
实验1 算法设计与分析 34
第2章 线性表 36
2.1 线性表抽象数据类型 36
2.2 线性表的顺序表示和实现 37
2.3 线性表的链式表示和实现 44
2.3.1 单链表 45
2.3.2 双链表 59
2.4 线性表的应用:多项式的表示及运算 63
2.4.1 一元多项式的表示及运算 63
2.4.2 二元多项式的表示及运算 71
习题2 73
实验2 线性表的基本操作 74
第3章 串 76
3.1 串抽象数据类型 76
3.2 串的表示和实现 77
3.2.1 串的存储结构 77
3.2.2 常量字符串类String 78
3.2.3 变量字符串类StringBuffer 85
3.3 串的模式匹配 88
3.3.1 Brute-Force算法 88
3.3.2 KMP算法 94
习题3 100
实验3 串的基本操作及模式匹配算法 102
第4章 栈和队列 104
4.1 栈 104
4.1.1 栈抽象数据类型 104
4.1.2 顺序栈 104
4.1.3 链式栈 106
4.1.4 栈的应用 106
4.2 队列 113
4.2.1 队列抽象数据类型 113
4.2.2 顺序队列 113
4.2.3 链式队列 116
4.2.4 队列的应用 117
4.3 优先队列 118
4.4 递归 120
习题4 124
实验4 栈和队列以及递归算法 125
第5章 数组和广义表 127
5.1 数组 127
5.1.1 一维数组 127
5.1.2 多维数组 127
5.2 特殊矩阵的压缩存储 132
5.2.1 三角矩阵、对称矩阵和对角矩阵的压缩存储 132
5.2.2 稀疏矩阵的压缩存储 136
5.3 广义表 151
5.3.1 广义表抽象数据类型 151
5.3.2 广义表的存储结构 153
5.3.3 广义表的双链表示的实现 154
5.3.4 m元多项式的广义表表示 159
习题5 159
实验5 特殊矩阵和广义表的存储和运算 161
第6章 树和二叉树 163
6.1 树及其抽象数据类型 163
6.1.1 树定义 163
6.1.2 树的术语 164
6.1.3 树的表示法 165
6.1.4 树抽象数据类型 165
6.2 二叉树及其抽象数据类型 166
6.2.1 二叉树的定义 166
6.2.2 二叉树的性质 166
6.2.3 二叉树的遍历规则 168
6.2.4 二叉树抽象数据类型 169
6.3 二叉树的表示和实现 169
6.3.1 二叉树的存储结构 169
6.3.2 二叉树的二叉链表实现 171
6.3.3 二叉树的三叉链表实现 185
6.4 线索二叉树 189
6.4.1 线索二叉树的定义 189
6.4.2 中序线索二叉树 190
6.5 Huffman编码与Huffman树 200
6.5.1 Huffman编码 200
6.5.2 Huffman树 201
6.6 树的表示和实现 207
6.6.1 树的遍历规则 207
6.6.2 树的存储结构 207
6.6.3 树的孩子兄弟链表实现 208
习题6 215
实验6 树和二叉树的基本操作 217
第7章 图 219
7.1 图及其抽象数据类型 219
7.1.1 图的基本概念 219
7.1.2 图抽象数据类型 222
7.2 图的表示和实现 223
7.2.1 图的邻接矩阵表示和实现 223
7.2.2 图的邻接表表示和实现 229
7.2.3 图的邻接多重表表示 235
7.3 图的遍历 236
7.3.1 图的深度优先搜索遍历 237
7.3.2 图的广度优先搜索遍历 240
7.4 *小生成树 241
7.4.1 生成树 241
7.4.2 *小生成树的构造算法 243
7.5 *短路径 247
7.5.1 非负权值的单源*短路径(Dijkstra算法) 247
7.5.2 每对顶点间的*短路径(Floyd算法) 251
习题7 255
实验7 图的表示和操作 256
第8章 查找 258
8.1 查找的基本概念 258
8.2 基于线性表的查找 259
8.2.1 顺序查找 259
8.2.2 基于有序顺序表的折半查找 262
8.2.3 基于索引顺序表的分块查找 264
8.3 散列 269
8.3.1 散列表 269
8.3.2 散列函数 271
8.3.3 冲突处理 271
8.3.4 构造链地址法的散列表 273
8.4 二叉排序树和平衡二叉树 276
8.4.1 二叉排序树 276
8.4.2 平衡二叉树 282
习题8 285
实验8 查找算法 286
第9章 排序 288
9.1 排序的基本概念 288
9.2 插入排序 289
9.2.1 直接插入排序和折半插入排序 289
9.2.2 希尔排序 291
9.3 交换排序 292
9.3.1 冒泡排序 292
9.3.2 快速排序 293
9.4 选择排序 295
9.4.1 直接选择排序 295
9.4.2 堆排序 296
9.5 归并排序 300
9.6 单链表的排序算法 302
习题9 304
实验9 排序算法设计及分析 305
第10章 综合应用设计 307
10.1 数组和集合 307
10.1.1 Arrays数组类 307
10.1.2 Java集合框架 308
10.2 实现迭代器 319
10.2.1 基于迭代器的操作 320
10.2.3 提供迭代器对象 321
10.3 算法设计策略 323
10.3.1 分治法 323
10.3.2 动态规划法 324
10.3.3 贪心法 326
10.3.4 回溯法 338
10.4 课程设计的目的、要求和选题 349
附录A ASCII字符与Unicode值 355
附录B Java关键字 356
附录C Java基本数据类型 358
附录D Java运算符及其优先级 359
附录E Java类库(部分) 360
E.1 java.lang语言包 360
E.2 java.util实用包 369
附录F MyEclips常用菜单命令 366
参考文献 368信息
-
4.23文创礼盒A款--“作家言我精神状态”
¥42.3¥206 -
4.23文创礼盒B款--“作家言我精神状态”
¥42.3¥206 -
一句顶一万句 (印签版)
¥40.4¥68 -
百年书评史散论
¥14.9¥38 -
1980年代:小说六记
¥52.8¥69 -
中图网经典初版本封面-“老人与海”冰箱贴
¥20¥40