Hardcover(New Edition)
-
PICK UP IN STORECheck Availability at Nearby Stores
Available within 2 business hours
Related collections and offers
Overview
Picture a computer scientist, staring at a screen and clicking away frantically on a keyboard, hacking into a system, or perhaps developing an app. Now delete that picture. In Once Upon an Algorithm, Martin Erwig explains computation as something that takes place beyond electronic computers, and computer science as the study of systematic problem solving. Erwig points out that many daily activities involve problem solving. Getting up in the morning, for example: You get up, take a shower, get dressed, eat breakfast. This simple daily routine solves a recurring problem through a series of well-defined steps. In computer science, such a routine is called an algorithm.
Erwig illustrates a series of concepts in computing with examples from daily life and familiar stories. Hansel and Gretel, for example, execute an algorithm to get home from the forest. The movie Groundhog Day illustrates the problem of unsolvability; Sherlock Holmes manipulates data structures when solving a crime; the magic in Harry Potter’s world is understood through types and abstraction; and Indiana Jones demonstrates the complexity of searching. Along the way, Erwig also discusses representations and different ways to organize data; “intractable” problems; language, syntax, and ambiguity; control structures, loops, and the halting problem; different forms of recursion; and rules for finding errors in algorithms.
This engaging book explains computation accessibly and shows its relevance to daily life. Something to think about next time we execute the algorithm of getting up in the morning.
Product Details
ISBN-13: | 9780262036634 |
---|---|
Publisher: | MIT Press |
Publication date: | 08/11/2017 |
Series: | The MIT Press |
Edition description: | New Edition |
Pages: | 336 |
Product dimensions: | 7.20(w) x 8.40(h) x 0.90(d) |
Age Range: | 18 Years |
About the Author
Table of Contents
Preface vii
Acknowledgments xi
Introduction 1
Part I Algorithms
Computation and Algorithms - Hansel and Gretel
1 A Path to Understanding Computation 19
2 Walk the Walk: When Computation Really Happens 33
Representation and Data Structures - Sherlock Holmes
3 The Mystery of Signs 49
4 Detective's Notebook: Accessory after the Fact 63
Problem Solving and Its Limitations - Indiana Jones
5 The Search for the Perfect Data Structure 83
6 Sorting out Sorting 103
7 Mission Intractable 121
Part II Languages
Language and Meaning - Over the Rainbow
8 The Prism of Language 141
9 Finding the Right Tone: Sound Meaning 159
Control Structures and Loops - Groundhog Day
10 Weather, Rinse, Repeat 175
11 Happy Ending Not Guaranteed 189
Recursion - Back to the Future
12 A Stitch in Time Computes Fine 205
13 A Matter of Interpretation 225
Types and Abstraction - Harry Potter
14 The Magical Type 245
15 A Bird's Eye View: Abstracting from Details 263
Glossary 287
Notes 303
Index 313
What People are Saying About This
Clever algorithms and data structures are at the core of computer science. This book is an excellent exposition of computational and informational thinking, and one that is unusually accessible to anyone with an inquiring mind.
This is a wonderful book. Algorithms and computation explained using the likes of Hansel and Gretel, Indiana Jones, Sherlock Holmes, and Harry Potter. For 35 years I've been trying to explain to people that algorithms are all around us, and that algorithmic thinking is an absolutely crucial skill that is needed in our day-to-day lives way beyond mere computers and electronics. Finally, here is a book for them to read.
By connecting computing concepts with popular stories, Martin Erwig helps both the general public and students see computing's relevance beyond traditional technology contexts. I suspect that readers will begin to see computing everywhere!
Clever algorithms and data structures are at the core of computer science. This book is an excellent exposition of computational and informational thinking, and one that is unusually accessible to anyone with an inquiring mind.
Simon Peyton Jones
This is a wonderful book. Algorithms and computation explained using the likes of Hansel and Gretel, Indiana Jones, Sherlock Holmes, and Harry Potter. For 35 years I've been trying to explain to people that algorithms are all around us, and that algorithmic thinking is an absolutely crucial skill that is needed in our day-to-day lives way beyond mere computers and electronics. Finally, here is a book for them to read.
David Harel, Professor, The Weizmann Institute of Science, Vice President, Israel Academy of Sciences and Humanities; author of Algorithmics and Computers Ltd.: What they Really Can't DoBy connecting computing concepts with popular stories, Martin Erwig helps both the general public and students see computing's relevance beyond traditional technology contexts. I suspect that readers will begin to see computing everywhere!
Pat Yongpradit, Chief Academic Officer, Code.orgClever algorithms and data structures are at the core of computer science. This book is an excellent exposition of computational and informational thinking, and one that is unusually accessible to anyone with an inquiring mind.
Simon Peyton Jones