An edition of Algorithm Design and Applications (2014)

Algorithm Design and Applications

  • 2 Want to read
Preview

My Reading Lists:

Create a new list

  • 2 Want to read

Buy this book

Last edited by Drini
September 13, 2025 | History
An edition of Algorithm Design and Applications (2014)

Algorithm Design and Applications

  • 2 Want to read

This edition doesn't have a description yet. Can you add one?

Publish Date
Publisher
Wiley
Pages
816

Buy this book

Edition Availability
Cover of: Algorithm Design and Applications
Algorithm Design and Applications
Oct 27, 2014, Wiley
Cover of: Algorithm Design and Applications
Algorithm Design and Applications
2014, Wiley & Sons, Incorporated, John
in English

Add another edition?

Book Details


Table of Contents

Preface
Page xi
1. Algorithm Analysis
Page 1
1.1. Analyzing Algorithms
Page 3
1.2. A Quick Mathematical Review
Page 19
1.3. A Case Study in Algorithm Analysis
Page 29
1.4. Amortization
Page 34
1.5. Exercises
Page 42
Part I. Data Structures
2. Basic Data Structures
Page 51
2.1. Stacks and Queues
Page 53
2.2. Lists
Page 60
2.3. Trees
Page 68
2.4. Exercises
Page 84
3. Binary Search Trees
Page 89
3.1. Searches and Updates
Page 91
3.2. Range Queries
Page 101
3.3. Index-Based Searching
Page 104
3.4. Randomly Constructed Search Trees
Page 107
3.5. Exercises
Page 110
4. Balanced Binary Search Trees
Page 115
4.1. Ranks and Rotations
Page 117
4.2. AVL Trees
Page 120
4.3. Red-Black Trees
Page 126
4.4. Weak AVL Trees
Page 130
4.5. Splay Trees
Page 139
4.6. Exercises
Page 149
5. Priority Queues and Heaps
Page 155
5.1. Priority Queues
Page 157
5.2. PQ-Sort, Selection-Sort, and Insertion-Sort
Page 158
5.3. Heaps
Page 163
5.4. Heap-Sort
Page 174
5.5. Extending Priority Queues
Page 179
5.6. Exercises
Page 182
6. Hash Tables
Page 187
6.1. Maps
Page 189
6.2. Hash Functions
Page 192
6.3. Handling Collisions and Rehashing
Page 198
6.4. Cuckoo Hashing
Page 206
6.5. Universal Hashing
Page 212
6.6. Exercises
Page 215
7. Union-Find Structures
Page 219
7.1. Union-Find and Its Applications
Page 221
7.2. A List-Based Implementation
Page 225
7.3. A Tree-Based Implementation
Page 228
7.4. Exercises
Page 236
Part II. Sorting and Selection
8. Merge-Sort and Quick-Sort
Page 241
8.1. Merge-Sort
Page 243
8.2. Quick-Sort
Page 250
8.3. A Lower Bound on Comparison-Based Sorting
Page 257
8.4. Exercises
Page 259
9. Fast Sorting and Selection
Page 265
9.1. Bucket-Sort and Radix-Sort
Page 267
9.2. Selection
Page 270
9.3. Weighted Medians
Page 276
9.4. Exercises
Page 279
Part III. Fundamental Techniques
10. The Greedy Method
Page 283
10.1. The Fractional Knapsack Problem
Page 286
10.2. Task Scheduling
Page 289
10.3. Text Compression and Huffman Coding
Page 292
10.4. Exercises
Page 298
11. Divide-and-Conquer
Page 303
11.1. Recurrences and the Master Theorem
Page 305
11.2. Integer Multiplication
Page 313
11.3. Matrix Multiplication
Page 315
11.4. The Maxima-Set Problem
Page 317
11.5. Exercises
Page 319
12. Dynamic Programming
Page 323
12.1. Matrix Chain-Products
Page 325
12.2. The General Technique
Page 329
12.3. Telescope Scheduling
Page 331
12.4. Game Strategies
Page 334
12.5. The Longest Common Subsequence Problem
Page 339
12.6. The 0-1 Knapsack Problem
Page 343
12.7. Exercises
Page 346
13. Graphs and Traversals
Page 353
13.1. Graph Terminology and Representations
Page 355
13.2. Depth-First Search
Page 365
13.3. Breadth-First Search
Page 370
13.4. Directed Graphs
Page 373
13.5. Biconnected Components
Page 386
13.6. Exercises
Page 392
Part IV. Graph Algorithms
14. Shortest Paths
Page 397
14.1. Single-Source Shortest Paths
Page 399
14.2. Dijkstra's Algorithm
Page 400
14.3. The Bellman-Ford Algorithm
Page 407
14.4. Shortest Paths in Directed Acyclic Graphs
Page 410
14.5. All-Pairs Shortest Paths
Page 412
14.6. Exercises
Page 418
15. Minimum Spanning Trees
Page 423
15.1. Properties of Minimum Spanning Trees
Page 425
15.2. Kruskal's Algorithm
Page 428
15.3. The Prim-Jarník Algorithm
Page 433
15.4. Borůvka's Algorithm
Page 436
15.5. Exercises
Page 439
16. Network Flow and Matching
Page 443
16.1. Flows and Cuts
Page 445
16.2. Maximum Flow Algorithms
Page 452
16.3. Maximum Bipartite Matching
Page 458
16.4. Baseball Elimination
Page 460
16.5. Minimum-Cost Flow
Page 462
16.6. Exercises
Page 469
Part V. Computational Intractability
17. NP-Completeness
Page 473
17.1. P and NP
Page 476
17.2. NP-Completeness
Page 483
17.3. CNF-SAT and 3SAT
Page 489
17.4. VERTEX-COVER, CLIQUE, and SET-COVER
Page 492
17.5. SUBSET-SUM and KNAPSACK
Page 496
17.6. HAMILTONIAN-CYCLE and TSP
Page 499
17.7. Exercises
Page 502
18. Approximation Algorithms
Page 507
18.1. The Metric Traveling Salesperson Problem
Page 511
18.2. Approximations for Covering Problems
Page 515
18.3. Polynomial-Time Approximation Schemes
Page 518
18.4. Backtracking and Branch-and-Bound
Page 521
18.5. Exercises
Page 525
Part VI. Additional Topics
19. Randomized Algorithms
Page 529
19.1. Generating Random Permutations
Page 531
19.2. Stable Marriages and Coupon Collecting
Page 534
19.3. Minimum Cuts
Page 539
19.4. Finding Prime Numbers
Page 546
19.5. Chernoff Bounds
Page 551
19.6. Skip Lists
Page 557
19.7. Exercises
Page 563
20. B-Trees and External Memory
Page 569
20.1. External Memory
Page 571
20.2. (2,4) Trees and B-Trees
Page 574
20.3. External-Memory Sorting
Page 590
20.4. Online Caching Algorithms
Page 593
20.5. Exercises
Page 600
21. Multidimensional Searching
Page 603
21.1. Range Trees
Page 605
21.2. Priority Search Trees
Page 609
21.3. Quadtrees and k-d Trees
Page 614
21.4. Exercises
Page 618
22. Computational Geometry
Page 623
22.1. Operations on Geometric Objects
Page 625
22.2. Convex Hulls
Page 630
22.3. Segment Intersection
Page 638
22.4. Finding a Closest Pair of Points
Page 642
22.5. Exercises
Page 646
23. String Algorithms
Page 651
23.1. String Operations
Page 653
23.2. The Boyer-Moore Algorithm
Page 656
23.3. The Knuth-Morris-Pratt Algorithm
Page 660
23.4. Hash-Based Lexicon Matching
Page 664
23.5. Tries
Page 669
23.6. Exercises
Page 680
24. Cryptography
Page 685
24.1. Greatest Common Divisors (GCD)
Page 687
24.2. Modular Arithmetic
Page 691
24.3. Cryptographic Operations
Page 699
24.4. The RSA Cryptosystem
Page 703
24.5. The El Gamal Cryptosystem
Page 706
24.6. Exercises
Page 708
25. The Fast Fourier Transform
Page 711
25.1. Convolution
Page 713
25.2. Primitive Roots of Unity
Page 715
25.3. The Discrete Fourier Transform
Page 717
25.4. The Fast Fourier Transform Algorithm
Page 721
25.5. Exercises
Page 727
26. Linear Programming
Page 731
26.1. Formulating the Problem
Page 734
26.2. The Simplex Method
Page 739
26.3. Duality
Page 746
26.4. Applications of Linear Programming
Page 750
26.5. Exercises
Page 753
A. Useful Mathematical Facts
Page 761
Bibliography
Page 765
Index
Page 774

Classifications

Library of Congress
QA76.9.A43 G668 2015, QA76.9.A43G668 2014

Edition Identifiers

Open Library
OL26837943M
ISBN 10
1118335910
ISBN 13
9781118335918
LCCN
2014021534
OCLC/WorldCat
875249233

Work Identifiers

Work ID
OL19547363W

Community Reviews (0)

No community reviews have been submitted for this work.

Lists

Download catalog record: RDF / JSON / OPDS | Wikipedia citation