下载地址:网盘下载

内容简介  · · · · · ·

本书全面讲述算法和数据结构的必备知识,具有以下几大特色。

 算法领域的经典参考书

Sedgewick畅销著作的最新版,反映了经过几十年演化而成的算法核心知识体系

 内容全面

全面论述排序、搜索、图处理和字符串处理的算法和数据结构,涵盖每位程序员应知应会的50种算法

 全新修订的代码

全新的Java实现代码,采用模块化的编程风格,所有代码均可供读者使用

 与实际应用相结合

在重要的科学、工程和商业应用环境下探讨算法,给出了算法的实际代码,而非同类著作常用的伪代码

 富于智力趣味性

简明扼要的内容,用丰富的视觉元素展示的示例,精心设计的代码,详尽的历史和科学背景知识,各种难度的练习,这一切都将使读者手不释卷

 科学的方法

用合适的数学模型精确地讨论算法性能,这些模型是在真实环境中得到验证的

 与网络相结合

配套网站algs4.cs.princeton.edu提供了本书内容的摘要及相关的代码、测试数据、编程练习、教学课件等资源

作者简介  · · · · · ·

Robert Sedgewick 斯坦福大学博士,导师为Donald E. Knuth,从1985年开始一直担任普林斯顿大学计算机科学系教授,曾任该系主任,也是Adobe Systems公司董事会成员,曾在Xerox PARC、国防分析研究所(Institute for Defense Analyses)和法国国家信息与自动化研究所(INRIA)从事研究工作。他的研究方向包括解析组合学、数据结构和算法的分析与设计、程序可视化等。

Kevin Wayne 康奈尔大学博士,普林斯顿大学计算机科学系高级讲师,研究方向包括算法的设计、分析和实现,特别是图和离散优化。

目录  · · · · · ·

目录
第1章  基础  1
1.1 基础编程模型  4
1.1.1 Java程序的基本结构  4
1.1.2 原始数据类型与表达式  6
1.1.3  语句  8
1.1.4  简便记法  9
1.1.5  数组  10
1.1.6  静态方法  12
1.1.7  API  16
1.1.8  字符串  20
1.1.9  输入输出  21
1.1.10  二分查找  28
1.1.11  展望  30
1.2  数据抽象  38
1.2.1  使用抽象数据类型  38
1.2.2  抽象数据类型举例  45
1.2.3  抽象数据类型的实现  52
1.2.4  更多抽象数据类型的实现  55
1.2.5  数据类型的设计  60
1.3  背包、队列和栈  74
1.3.1  API  74
1.3.2  集合类数据类型的实现  81
1.3.3  链表  89
1.3.4  综述  98
1.4  算法分析  108
1.4.1  科学方法  108
1.4.2  观察  108
1.4.3  数学模型  112
1.4.4  增长数量级的分类  117
1.4.5  设计更快的算法  118
1.4.6  倍率实验  121
1.4.7  注意事项  123
1.4.8  处理对于输入的依赖  124
1.4.9  内存  126
1.4.10  展望  129
1.5  案例研究:union-find算法  136
1.5.1  动态连通性  136
1.5.2  实现  140
1.5.3  展望  148
第2章  排序  152
2.1  初级排序算法  153
2.1.1  游戏规则  153
2.1.2  选择排序  155
2.1.3  插入排序  157
2.1.4  排序算法的可视化  159
2.1.5  比较两种排序算法  159
2.1.6  希尔排序  162
2.2  归并排序  170
2.2.1  原地归并的抽象方法  170
2.2.2  自顶向下的归并排序  171
2.2.3  自底向上的归并排序  175
2.2.4  排序算法的复杂度  177
2.3  快速排序  182
2.3.1  基本算法  182
2.3.2  性能特点  185
2.3.3  算法改进  187
2.4  优先队列  195
2.4.1  API  195
2.4.2  初级实现  197
2.4.3  堆的定义  198
2.4.4  堆的算法  199
2.4.5  堆排序  205
2.5  应用  214
2.5.1  将各种数据排序  214
2.5.2  我应该使用哪种排序算法  218
2.5.3  问题的归约  219
2.5.4  排序应用一览  221
第3章 查找  227
3.1 符号表  228
3.1.1 API  228
3.1.2 有序符号表  230
3.1.3 用例举例  233
3.1.4 无序链表中的顺序查找  235
3.1.5 有序数组中的二分查找  238
3.1.6 对二分查找的分析  242
3.1.7 预览  244
3.2 二叉查找树  250
3.2.1 基本实现  250
3.2.2 分析  255
3.2.3 有序性相关的方法与删除操作  257
3.3 平衡查找树  269
3.3.1 2-3查找树  269
3.3.2 红黑二叉查找树  275
3.3.3 实现  280
3.3.4 删除操作  282
3.3.5 红黑树的性质  284
3.4 散列表  293
3.4.1 散列函数  293
3.4.2 基于拉链法的散列表  297
3.4.3 基于线性探测法的散列表  300
3.4.4 调整数组大小  304
3.4.5 内存使用  306
3.5 应用  312
3.5.1 我应该使用符号表的哪种实现  312
3.5.2 集合的API  313
3.5.3 字典类用例  315
3.5.4 索引类用例  318
3.5.5 稀疏向量  322
第4章  图  329
4.1  无向图  331
4.1.1  术语表  331
4.1.2  表示无向图的数据类型  333
4.1.3  深度优先搜索  338
4.1.4  寻找路径  342
4.1.5  广度优先搜索  344
4.1.6  连通分量  349
4.1.7  符号图  352
4.1.8  总结  358
4.2  有向图  364
4.2.1  术语  364
4.2.2  有向图的数据类型  365
4.2.3  有向图中的可达性  367
4.2.4  环和有向无环图  369
4.2.5  有向图中的强连通性  378
4.2.6  总结  385
4.3  最小生成树  390
4.3.1  原理  391
4.3.2  加权无向图的数据类型  393
4.3.3  最小生成树的API和测试用例  396
4.3.4  Prim算法  398
4.3.5  Prim算法的即时实现  401
4.3.6  Kruskal算法  404
4.3.7  展望  407
4.4  最短路径  412
4.4.1  最短路径的性质  413
4.4.2  加权有向图的数据结构  414
4.4.3  最短路径算法的理论基础  420
4.4.4  Dijkstra算法  421
4.4.5  无环加权有向图中的最短路径算法  425
4.4.6  一般加权有向图中的最短路径问题  433
4.4.7  展望  445
第5章  字符串  451
5.1  字符串排序  455
5.1.1  键索引计数法  455
5.1.2  低位优先的字符串排序  458
5.1.3  高位优先的字符串排序  461
5.1.4  三向字符串快速排序  467
5.1.5  字符串排序算法的选择  470
5.2  单词查找树  474
5.2.1  单词查找树  475
5.2.2  单词查找树的性质  483
5.2.3  三向单词查找树  485
5.2.4  三向单词查找树的性质  487
5.2.5  应该使用字符串符号表的哪种实现  489
5.3  子字符串查找  493
5.3.1  历史简介  493
5.3.2  暴力子字符串查找算法  494
5.3.3  Knuth-Morris-Pratt子字符串查找算法  496
5.3.4  Boyer-Moore字符串查找算法  502
5.3.5  Rabin-Karp指纹字符串查找算法  505
5.3.6  总结  509
5.4  正则表达式  514
5.4.1  使用正则表达式描述模式  514
5.4.2  缩略写法  516
5.4.3  正则表达式的实际应用  517
5.4.4  非确定有限状态自动机  518
5.4.5  模拟NFA的运行  520
5.4.6  构造与正则表达式对应的
5.5  数据压缩  529
5.5.1  游戏规则  529
5.5.2  读写二进制数据  530
5.5.3  局限  533
5.5.4  热身运动:基因组  534
5.5.5  游程编码  537
5.5.6  霍夫曼压缩  540
第6章  背景  558
索引  611

下载地址:网盘下载

转载于:https://www.cnblogs.com/long12365/p/9730776.html

图灵程序设计丛书 算法(第4版)pdf相关推荐

  1. 图灵程序设计丛书:大规模数据处理入门与实战.epub

    图灵程序设计丛书(十本合订版) 总目录 Kafka权威指南 Flink基础教程 数据科学实战 SQL反模式 SQL必知必会(第4版) Spark快速大数据分析 数据科学入门 Python数据挖掘入门与 ...

  2. 图灵程序设计丛书•鲜活的数据:数据可视化指南 - 电子书下载(高清版PDF格式+EPUB格式)...

    图灵程序设计丛书•鲜活的数据_数据可视化指南-邱 (Nathan Yau) 在线阅读                   百度网盘下载(o3hg) 书名:图灵程序设计丛书•鲜活的数据:数据可视化指南 ...

  3. [图灵程序设计丛书].持续交付:发布可靠软件的系统方法.pdf

    [图灵程序设计丛书].持续交付:发布可靠软件的系统方法.pdf 下载链接 转载于:https://blog.51cto.com/4456998/2378261

  4. [图灵程序设计丛书].奔跑吧,程序员:从零开始打造产品、技术和团队.pdf

    [图灵程序设计丛书].奔跑吧,程序员:从零开始打造产品.技术和团队.pdf 下载链接 转载于:https://blog.51cto.com/4456998/2378265

  5. 深入Linux内核架构 (图灵程序设计丛书·LinuxUNIX系列)

    深入Linux内核架构 (图灵程序设计丛书·LinuxUNIX系列) 下载地址 https://pan.baidu.com/s/1SydaciM3sUkxN9JUbdttKw 扫码下面二维码关注公众号 ...

  6. html5入门 epub,分享《HTML5与CSS3基础教程(第7版) 》(图灵程序设计丛书) pdf epub azw3格式...

    <HTML5与CSS3基础教程(第7版)> pdf epub azw3格式 下载地址: https://pan.baidu.com/s/1J2LPQoV1GP90UwaFXvKPaw 内容 ...

  7. 算法[第四版]-图灵程序设计丛书-笔记

    第一章-笔记 1.1.9 : 编写一段代码,将一个正整数 N 用二进制表示并转换为一个 String 类型的值 s. public class Conversionbinary {public sta ...

  8. python入门经典图灵pdf_[图灵程序设计丛书].Python数据分析基础[PDF][26.55MB]

    内容简介 本书展示如何用Python程序将不同格式的数据处理和分析任务规模化和自动化.主要内容包括:Python基础知识介绍.CSV文件和Excel文件读写.数据库的操作.示例程序演示.图表的创建,等 ...

  9. C语言程序设计 现代方法(第2版)pdf

    下载地址: 网盘下载 内容简介  · · · · · · <C语言程序设计现代方法>最主要的一个目的就是通过一种"现代方法"来介绍C语言,实现客观评价C语言.强调标准化 ...

  10. python程序设计与算法基础第二版课后答案_python算法与程序设计基础答案

    python算法与程序设计基础答案 更多相关问题 [单选] 农产品质量安全法所称农产品,是指来源于农业的(),即在农业活动中获得的植物.动物.微生物及其产品. [单选] 设有关系Students(学号 ...

最新文章

  1. swift iOS8 XIB 问题 ViewController.init() xib
  2. [Head First设计模式]生活中学设计模式——迭代器模式
  3. c语言程序设计A课程试,自学考试有关论文范文,与C语言程序设计A课程辅导相关硕士毕业论文范文...
  4. 惊呆!学习MySQL真的这一篇就够了!太全了
  5. Android 使用LocationLstenser获取位置信息
  6. selenium之输出html测试报告
  7. 在移动端a、input、label等标签点击后会出现背景阴影问题
  8. DataWorks百问百答01:数据同步该用什么资源组
  9. java process exe.exec 执行exe程序
  10. Auto type deducing
  11. python取模1e9+7_G题取1E9+7wa,取1E9+9等一些其他的值ac
  12. java调用lua 路径_luacom打开中文路径的Word文件
  13. 这是我的第一个博客,以后遇到问题一起解决
  14. input做成label效果
  15. Codeforces Round #371 (Div. 2)
  16. 复旦计算机学院软件工程,2019年复旦961软件工程专硕考研初试363+复试经验分享...
  17. 用USBOOT软件修复U盘
  18. CMOS到触发器(二)
  19. TLC2543硬件SPI代码
  20. mysql04:数据管理

热门文章

  1. JAVA语言程序设计(基础篇)第十版课后题答案(第一章)
  2. Java 实现插入排序算法
  3. EDA技术实用教程 | 复习三 | 不同类型的赋值语句
  4. 数字电路课程设计---电子钟
  5. hasLayout与Block Formatting Context(块格式化上下文)
  6. 如何使textarea显示滚动条
  7. 如何检验java环境变量是否配好_如何验证Java环境变量配置成功
  8. 2021-09-07
  9. 经典c语言基础代码大全,经典基础实例编程C语言代码.doc
  10. 学习matlab体会,学习matlab心得体会.doc