Your secret weapon to understanding—and using!—one of the most powerful influences in the world today
From your Facebook News Feed to your most recent insurance premiums—even making toast!—algorithms play a role in virtually everything that happens in modern society and in your personal life. And while they can seem complicated from a distance, the reality is that, with a little help, anyone can understand—and even use—these powerful problem-solving tools!
In Algorithms For Dummies, you’ll discover the basics of algorithms, including what they are, how they work, where you can find them (spoiler alert: everywhere!), who invented the most important ones in use today (a Greek philosopher is involved), and how to create them yourself.
You’ll also find:
- Dozens of graphs and charts that help you understand the inner workings of algorithms
- Links to an online repository called Git Hub for constant access to updated code
- Step-by-step instructions on how to use Google Colaboratory, a zero-setup coding environment that runs right from your browser
Whether you’re a curious internet user wondering how Google seems to always know the right answer to your question or a beginning computer science student looking for a head start on your next class, Algorithms For Dummies is the can’t-miss resource you’ve been waiting for.
สารบัญ
Introduction 1
Part 1: Getting Started with Algorithms 7
Chapter 1: Introducing Algorithms 9
Chapter 2: Considering Algorithm Design 23
Chapter 3: Working with Google Colab 41
Chapter 4: Performing Essential Data Manipulations Using Python 59
Chapter 5: Developing a Matrix Computation Class 79
Part 2: Understanding the Need to Sort and Search 97
Chapter 6: Structuring Data 99
Chapter 7: Arranging and Searching Data 117
Part 3: Exploring the World of Graphs 139
Chapter 8: Understanding Graph Basics 141
Chapter 9: Reconnecting the Dots 161
Chapter 10: Discovering Graph Secrets 195
Chapter 11: Getting the Right Web page 207
Part 4: Wrangling Big Data 223
Chapter 12: Managing Big Data 225
Chapter 13: Parallelizing Operations 249
Chapter 14: Compressing and Concealing Data 267
Part 5: Challenging Difficult Problems 289
Chapter 15: Working with Greedy Algorithms 291
Chapter 16: Relying on Dynamic Programming 307
Chapter 17: Using Randomized Algorithms 331
Chapter 18: Performing Local Search 349
Chapter 19: Employing Linear Programming 367
Chapter 20: Considering Heuristics 381
Part 6: The Part of Tens 401
Chapter 21: Ten Algorithms That Are Changing the World 403
Chapter 22: Ten Algorithmic Problems Yet to Solve 411
Index 417
ntroduction 1
Part 1: Getting Started with Algorithms 7
Chapter 1: Introducing Algorithms 9
Chapter 2: Considering Algorithm Design 23
Chapter 3: Working with Google Colab 41
Chapter 4: Performing Essential Data Manipulations Using Python 59
Chapter 5: Developing a Matrix Computation Class 79
Part 2: Understanding the Need to Sort and Search 97
Chapter 6: Structuring Data 99
Chapter 7: Arranging and Searching Data 117
Part 3: Exploring the World of Graphs 139
Chapter 8: Understanding Graph Basics 141
Chapter 9: Reconnecting the Dots 161
Chapter 10: Discovering Graph Secrets 195
Chapter 11: Getting the Right Web page 207
Part 4: Wrangling Big Data 223
Chapter 12: Managing Big Data 225
Chapter 13: Parallelizing Operations 249
Chapter 14: Compressing and Concealing Data 267
Part 5: Challenging Difficult Problems 289
Chapter 15: Working with Greedy Algorithms 291
Chapter 16: Relying on Dynamic Programming 307
Chapter 17: Using Randomized Algorithms 331
Chapter 18: Performing Local Search 349
Chapter 19: Employing Linear Programming 367
Chapter 20: Considering Heuristics 381
Part 6: The Part of Tens 401
Chapter 21: Ten Algorithms That Are Changing the World 403
Chapter 22: Ten Algorithmic Problems Yet to Solve 411
Index 417
ntroduction 1
Part 1: Getting Started with Algorithms 7
Chapter 1: Introducing Algorithms 9
Chapter 2: Considering Algorithm Design 23
Chapter 3: Working with Google Colab 41
Chapter 4: Performing Essential Data Manipulations Using Python 59
Chapter 5: Developing a Matrix Computation Class 79
Part 2: Understanding the Need to Sort and Search 97
Chapter 6: Structuring Data 99
Chapter 7: Arranging and Searching Data 117
Part 3: Exploring the World of Graphs 139
Chapter 8: Understanding Graph Basics 141
Chapter 9: Reconnecting the Dots 161
Chapter 10: Discovering Graph Secrets 195
Chapter 11: Getting the Right Web page 207
Part 4: Wrangling Big Data 223
Chapter 12: Managing Big Data 225
Chapter 13: Parallelizing Operations 249
Chapter 14: Compressing and Concealing Data 267
Part 5: Challenging Difficult Problems 289
Chapter 15: Working with Greedy Algorithms 291
Chapter 16: Relying on Dynamic Programming 307
Chapter 17: Using Randomized Algorithms 331
Chapter 18: Performing Local Search 349
Chapter 19: Employing Linear Programming 367
Chapter 20: Considering Heuristics 381
Part 6: The Part of Tens 401
Chapter 21: Ten Algorithms That Are Changing the World 403
Chapter 22: Ten Algorithmic Problems Yet to Solve 411
Index 417
เกี่ยวกับผู้แต่ง
John Mueller has published more than 100 books on technology, data, and programming. John has a website and blog where he writes articles on technology and offers assistance alongside his published books.
Luca Massaron is a data scientist specializing in insurance and finance. A Google Developer Expert in machine learning, he has been involved in quantitative analysis and algorithms since 2000.