图书介绍

计算机算法 设计与分析导论 英文版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

计算机算法 设计与分析导论 英文版
  • (美)SaraBaase,AllenVanGelder著 著
  • 出版社: 北京:高等教育出版社
  • ISBN:7040100487
  • 出版时间:2001
  • 标注页数:688页
  • 文件大小:44MB
  • 文件页数:707页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

计算机算法 设计与分析导论 英文版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

1 Analyzing Algorithms and Problems:Principles and Examples1

1.1 Introduction2

1.2 Java as an Algorithm Language3

Preface7

1.3 Mathematical Background11

1.4 Analyzing Algorithms and Problems30

1.5 Classifying Functions by Their Asymptotic Growth Rates43

1.6 Searching an Ordered Array53

Exercises61

Notes and References67

2 Data Abstraction and Basic Data Structures69

2.1 Introduction70

2.2 ADT Specification and Design Techniques71

2.3 Elementary ADTs--Lists and Trees73

2.4 Stacks and Queues86

2.5 ADTs for Dynamic Sets89

Exercises95

Notes and References100

3 Recursion and Induction101

3.1 Introduction102

3.2 Recursive Procedures102

3.3 What Is a Proof?108

3.4 Induction Proofs111

3.5 Proving Correctness of Procedures118

3.6 Recurrence Equations130

3.7 Recursion Trees134

Exercises141

Notes and References146

4 Sorting149

4.1 Introduction150

4.2 Insertion Sort151

4.3 Divide and Conquer157

4.4 Quicksort159

4.5 Merging Sorted Sequences171

4.6 Mergesort174

4.7 Lower Bounds for Sorting by Comparision of Keys178

4.8 Heapsort182

4.10 Shellsort197

4.9 Comparison of Four Sorting Algorithms197

4.11 Radix Sorting201

Exercises206

Programs221

Notes and References221

5 Selection and Adversary Arguments223

5.1 Introduction224

5.2 Finding max and min226

5.3 Finding the Second-Largest Key229

5.4 The Selection Problem233

5.5 A Lower Bound for Finding the Median238

5.6 Designing Against and Adversary240

Exercises242

Notes and References246

6 Dynamic Sets and Searching249

6.1 Introduction250

6.2 Array Doubling250

6.3 Amortized Time Analysis251

6.4 Red-Black Trees253

6.5 Hashing275

6.6 Dynamic Equivalence Relations and Union-Find Programs283

6.7 Priority Queues with a Decrease Key Operation295

Exercises302

Programs309

Notes and References309

7 Graphs and Graph Traversals313

7.1 Introduction314

7.2 Definitions and Representations314

7.3 Traversing Graphs328

7.4 Depth-First Search on Directed Graphs336

7.5 Strongly Connected Components of a Directed Graph357

7.6 Depth-First Stearch on Undirected Graphs364

7.7 Biconnected Components of an Undirected Graph366

Exercises375

Programs384

Notes and References385

8 Graph Optimization Problems and Greedy Algorithms387

8.2 Prim s Minimum Spanning Tree Algorithm388

8.1 Introduction388

8.3 Single-Source Shortest Paths403

8.4 Kruskal s Minimum Spanning Tree Algorithm412

Exercises416

Programs421

Notes and References422

9 Transitive Closure,All-Pairs Shortest Paths425

9.1 Introduction426

9.2 The Transitive Closure of a Binary Relation426

9.3 Warshall s Algorithm for Transitive Closure430

9.4 All-Pairs Shortest Paths in Graphs433

9.5 Computing Transitive Closure by Matrix Operations436

9.5 Multiplying Bit Matrices--Kronrod s Algorithm439

Exercises446

Programs449

Notes and References449

10 Dynamic Programming451

10.1 Introduction452

10.2 Subproblem Graphs and Their Traversal453

10.3 Multiplying a Sequence of Matrices457

10.4 Constructing Optimal Binary Search Trees466

10.5 Separating Sequences of Words into Lines471

10.6 Developing a Dynamic Programming Algorithm474

Exercises475

Programs481

Notes and References482

11 String Matching483

11.1 Introduction484

11.2 A Straightforward Solution485

11.3 The Knuth-Morris-Pratt Algorithm487

11.4 The Boyer-Moore Algorithm495

11.5 Approximate String Matching504

Exercises508

Programs512

Notes and References512

12 Polynomials and Matrices515

12.2 Evaluating Polynomial Functions516

12.1 Introduction516

12.3 Vector and Matrix Multiplication522

12.4 The Fast Fourier Transform and Convolution528

Exercises542

Programs546

Notes and References546

13 NP-Complete Problems547

13.2 P and NP548

13.1 Introduction548

13.3 NP-Complete Problems559

13.4 Approximation Algorithms570

13.5 Bin Packing572

13.6 The Knapsack and Subset Sum Problems577

13.7 Graph Coloring581

13.8 The Traveling Salesperson Problem589

13.9 Computing with DNA592

Exercises600

Notes and References608

14 Parallel Algorithms611

14.1 Introduction612

14.2 Parallelism,the PRAM, and Other Models612

14.3 Some Simple PRAM Algorithms616

14.4 Handling Write Conflicts622

14.5 Merging and Sorting624

14.6 Finding Connected Components628

14.7 A Lower Bound for Adding n Integers641

Exercises643

Notes and References647

A Java Examples and Techniques649

A.1 Introduction650

A.2 A Java Main Program651

A.3 A Simple Input Library656

A.4 Documenting Java Classes658

A.5 Generic Order and the “Comparable”Interface659

A.6 Subclasses Extend the Capability of Their Superclass663

A.7 Copy via the “Cloneable”Interface667

Bibliography669

Index679

热门推荐