数据结构与算法 Java语言版PDF电子书下载
- 电子书积分:15 积分如何计算积分?
- 作 者:(美)Adam Drozdek著;周翔等译
- 出 版 社:北京:机械工业出版社
- 出版年份:2003
- ISBN:7111119029
- 页数:489 页
第1章 Java语言的面向对象编程 1
1.1 Java入门 1
1.1.1 变量声明 1
1.1.2 运算符 3
1.1.3 选择语句 4
1.1.4 循环语句 5
1.1.5 异常处理 5
1.2 Java面向对象编程 7
1.2.1 封装 7
1.2.2 抽象数据类型 12
1.2.3 继承 13
1.2.4 多态性 15
1.3 输入和输出 18
1.4 Java和指针 21
1.5 java.util中的向量 24
1.6 数据结构和面向对象编程 28
1.7 示例学习:随机存取文件 29
1.8 习题 36
1.9 编程作业 38
参考文献 40
第2章 复杂性分析 41
2.1 计算复杂性和渐近复杂性 41
2.2 大O表示法 42
2.3 大O表示法的性质 43
2.4 Ω和Θ表示法 44
2.5 可能出现的问题 45
2.6 复杂性示例 46
2.7 寻找渐近复杂性:示例 47
2.8 最好的、平均的和最坏的情况 49
2.9 补偿复杂性 51
2.10 习题 54
参考文献 57
第3章 链表 59
3.1 单向链表 59
3.1.1 插入 63
3.1.2 删除 64
3.1.3 查找 67
3.2 双向链表 67
3.3 循环链表 72
3.4 跳转表 73
3.5 自组织表 77
3.6 稀疏表 80
3.7 用java.util的链表 83
3.8 小结 86
3.9 示例学习:图书馆管理 86
3.10 习题 94
3.11 编程作业 95
参考文献 98
第4章 堆栈和队列 99
4.1 堆栈 99
4.2 队列 106
4.3 优先级队列 112
4.4 示例学习:逃离迷宫 113
4.5 习题 117
4.6 编程作业 119
参考文献 120
第5章 递归 123
5.1 递归定义 123
5.2 方法调用和递归实现 125
5.3 剖析一个递归调用 126
5.4 尾递归 129
5.5 非尾递归 130
5.6 间接递归 134
5.7 嵌套递归 135
5.8 过分递归 136
5.9 回溯 138
5.10 小结 144
5.11 示例学习:一个递归下降解释器 144
5.12 习题 150
5.13 编程作业 153
参考文献 155
第6章 二叉树 157
6.1 树、二叉树和折半查找树 157
6.2 实现二叉树 160
6.3 搜索折半查找树 162
6.4 树的遍历 164
6.4.1 广度优先遍历 164
6.4.2 深度优先遍历 165
6.4.3 无堆栈深度优先遍历 170
6.5 插入 176
6.6 删除 178
6.6.1 归并删除法 179
6.6.2 拷贝删除法 180
6.7 树的平衡 182
6.7.1 DSW算法 185
6.7.2 AVL树 187
6.8 自适应树 191
6.8.1 自调整树 191
6.8.2 扩展 192
6.9 堆 195
6.9.1 堆作为优先级队列 197
6.9.2 以堆形式组织数组 198
6.10 波兰表示法和表示树 202
6.11 示例学习:计算单词频率 205
6.12 习题 211
6.13 编程作业 213
参考文献 216
第7章 多分树 219
7.1 B树家族 219
7.1.1 B树 220
7.1.2 B?树 228
7.1.3 B+树 229
7.1.4 前缀B+树 231
7.1.5 比特树 234
7.1.6 R树 235
7.1.7 2-4树 237
7.1.8 java.util中的集合 243
7.1.9 java.util中的映像 247
7.2 线索 250
7.3 小结 257
7.4 示例学习:拼写检查程序 257
7.5 习题 266
7.6 编程作业 267
参考文献 269
第8章 图 273
8.1 图的表示法 274
8.2 图的遍历 275
8.3 最短路径 278
8.4 环路检测 286
8.5 生成树 289
8.5.1 Boruvka算法 289
8.5.2 Kruskal算法 290
8.5.3 Jarník-Prim算法 290
8.5.4 Dijkstra算法 293
8.6 连通性 293
8.6.1 无向图的连通性 294
8.6.2 有向图的连通性 296
8.7 拓扑排序 298
8.8.1 最大流 300
8.8 网络 300
8.8.2 最小代价的最大流量 309
8.9 匹配 312
8.9.1 分配问题 316
8.9.2 非二部图中的匹配 318
8.10 欧拉图和哈密顿图 320
8.10.1 欧拉图 320
8.10.2 哈密顿图 321
8.11 示例学习:典型代表问题 323
8.12 习题 330
8.13 编程作业 333
参考文献 334
第9章 排序 337
9.1 元素排序算法 338
9.1.1 插入排序 338
9.1.2 选择排序 340
9.1.3 起泡排序 341
9.2 决策树 343
9.3 高效排序算法 346
9.3.1 希尔排序 346
9.3.2 堆排序 349
9.3.3 快速排序 351
9.3.4 归并排序 356
9.3.5 基数排序 359
9.4 java.util中的排序 362
9.5 小结 365
9.6 示例学习:多项式加法 366
9.7 习题 372
9.8 编程作业 373
参考文献 374
第10章 散列 377
10.1 散列函数 377
10.1.1 除法 377
10.1.2 折叠法 378
10.1.3 平方取中散列函数 378
10.1.4 提取方法 378
10.1.5 基数变换 379
10.2 冲突解决 379
10.2.1 开放地址法 379
10.2.2 链 384
10.2.3 桶地址法 385
10.3 删除 386
10.4 理想散列函数 386
10.4.1 Cichelli方法 387
10.4.2 FHCD算法 389
10.5 可扩展文件的散列函数 391
10.5.1 可扩展散列 391
10.5.2 线性散列 393
10.6 java.util中的散列 395
10.7 示例学习 399
10.8 习题 406
10.9 编程作业 407
参考文献 408
第11章 数据压缩 411
11.1 数据压缩的条件 411
11.2 霍夫曼编码 412
11.3 Shannon-Fano码 422
11.4 运行长度编码 423
11.5 Ziv-Lempel编码 424
11.6 示例学习:结合运行长度编码的霍夫曼方法 427
11.7 习题 435
11.8 编程作业 436
参考文献 437
第12章 存储管理 439
12.1 连续适应方法 439
12.2 非连续适应方法 440
12.3 无用单元收集 448
12.3.1 标记与清除算法 448
12.3.2 拷贝方法 454
12.3.3 增量式无用单元收集 455
12.4 小结 461
12.5 示例学习:内置无用单元收集器 462
12.6 习题 469
12.7 编程作业 470
参考文献 472
附录A 大O的计算 475
人名索引 479
名词索引 483
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《联吡啶基钌光敏染料的结构与性能的理论研究》李明霞 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《大数据Hadoop 3.X分布式处理实战》吴章勇,杨强 2020
- 《Power BI数据清洗与可视化交互式分析》陈剑 2020
- 《数据失控》(美)约翰·切尼-利波尔德(John Cheney-Lippold)著 2019
- 《幼儿园课程资源丛书 幼儿园语言教育资源》周兢编 2015
- 《中国生态系统定位观测与研究数据集 森林生态系统卷 云南西双版纳》邓晓保·唐建维 2010
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019