100 Best Algorithms Books of All Time

We've researched and ranked the best algorithms books in the world, based on recommendations from world experts, sales data, and millions of reader ratings. Learn more

Featuring recommendations from Elon Musk, Satya Nadella, Tony Robbins, and 73 other experts.
1

Introduction To Algorithms

Der "Cormen" bietet eine umfassende und vielseitige Einfuhrung in das moderne Studium von Algorithmen. Es stellt viele Algorithmen Schritt fur Schritt vor, behandelt sie detailliert und macht deren Entwurf und deren Analyse allen Leserschichten zuganglich. Sorgfaltige Erklarungen zur notwendigen Mathematik helfen, die Analyse der Algorithmen zu verstehen. Den Autoren ist es dabei gegluckt, Erklarungen elementar zu halten, ohne auf Tiefe oder mathematische Exaktheit zu verzichten. Jedes der weitgehend eigenstandig gestalteten Kapitel stellt einen Algorithmus, eine Entwurfstechnik, ein... more

See more recommendations for this book...

2

Algorithm Design Manual

Recommended by Hadley Wickham, and 1 others.

Hadley WickhamThis book is an illustration of the power of names in the Google era. (Source)

See more recommendations for this book...

3

Data Structures and Algorithms in Java

The design and analysis of efficient data structures has long been recognized as a key component of the Computer Science curriculum. Goodrich, Tomassia and Goldwasser's approach to this classic topic is based on the object-oriented paradigm as the framework of choice for the design of data structures. For each ADT presented in the text, the authors provide an associated Java interface. Concrete data structures realizing the ADTs are provided as Java classes implementing the interfaces. The Java code implementing fundamental data structures in this book is organized in a single Java package,... more
Recommended by Ana Bell, and 1 others.

Ana BellThe book presents some very basic algorithms, using Java. Every algorithm you see in the book is also implemented in Java, so if you want to run it, you can copy the code and execute it yourself. (Source)

See more recommendations for this book...

4

Algorithms to Live By

The Computer Science of Human Decisions

A fascinating exploration of how insights from computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mind

All our lives are constrained by limited space and time, limits that give rise to a particular set of problems. What should we do, or leave undone, in a day or a lifetime? How much messiness should we accept? What balance of new activities and familiar favorites is the most fulfilling? These may seem like uniquely human quandaries, but they are not: computers, too, face the same...
more

Doug McMillonHere are some of my favorite reads from 2017. Lots of friends and colleagues send me book suggestions and it's impossible to squeeze them all in. I continue to be super curious about how digital and tech are enabling people to transform our lives but I try to read a good mix of books that apply to a variety of areas and stretch my thinking more broadly. (Source)

Sriram Krishnan@rabois @nealkhosla Yes! Love that book (Source)

Chris OliverThis is a great book talking about how you can use computer science to help you make decisions in life. How do you know when to make a decision on the perfect house? Car? etc? It helps you apply algorithms to making those decisions optimally without getting lost. (Source)

See more recommendations for this book...

5
I am not a recruiter. I am a software engineer. And as such, I know what it's like to be asked to whip up brilliant algorithms on the spot and then write flawless code on a whiteboard. I've been through this as a candidate and as an interviewer.

Cracking the Coding Interview, 6th Edition is here to help you through this process, teaching you what you need to know and enabling you to perform at your very best. I've coached and interviewed hundreds of software engineers. The result is this book.

Learn how to uncover the hints and hidden details in a question,...
more

See more recommendations for this book...

6
An algorithm is nothing more than a step-by-step procedure for solving a problem. The algorithms you'll use most often as a programmer have already been discovered, tested, and proven. If you want to take a hard pass on Knuth's brilliant but impenetrable theories and the dense multi-page proofs you'll find in most textbooks, this is the book for you. This fully-illustrated and engaging guide makes it easy for you to learn how to use algorithms effectively in your own programs.

Grokking Algorithms is a disarming take on a core computer science topic. In it, you'll learn how to apply...
more

See more recommendations for this book...

7

Algorithms

This text, extensively class-tested over a decade at UC Berkeley and UC San Diego, explains the fundamentals of algorithms in a story line that makes the material enjoyable and easy to digest. Emphasis is placed on understanding the crisp mathematical idea behind each algorithm, in a manner that is intuitive and rigorous without being unduly formal. Features include: The use of boxes to strengthen the narrative: pieces that provide historical context, descriptions of how the algorithms are used in practice, and excursions for the mathematically sophisticated.

Carefully chosen...
more

See more recommendations for this book...

8
A look inside the algorithms that are shaping our lives and the dilemmas they bring with them.

If you were accused of a crime, who would you rather decide your sentence—a mathematically consistent algorithm incapable of empathy or a compassionate human judge prone to bias and error? What if you want to buy a driverless car and must choose between one programmed to save as many lives as possible and another that prioritizes the lives of its own passengers? And would you agree to share your family’s full medical history if you were told that it would help researchers find a cure for...
more
Recommended by David Smith, Jim Al-Khalili, and 2 others.

David SmithDarroch: “The best book I’ve read recently is called Hello World... It’s about the impact of algorithms across different areas... For me this was the best piece of learning I’ve done in recent months.” (Source)

Jim Al-KhaliliThe fact is, the age of AI is coming fast, and we need to be ready for it. This book will help you decide how worried you should be. (Source)

See more recommendations for this book...

9
"The bible of all fundamental algorithms and the work that taught many of today's software developers most of what they know about computer programming.""--Byte," September 1995 Countless readers have spoken about the profound personal influence of Knuth's work. Scientists have marveled at the beauty and elegance of his analysis, while ordinary programmers have successfully applied his "cookbook" solutions to their day-to-day problems. All have admired Knuth for the breadth, clarity, accuracy, and good humor found in his books. "I can't begin to tell you how many pleasurable hours of study... more
Recommended by Max Levchin, and 1 others.

Max LevchinI have a certain permanent love for [the author]'s magnum opus. (Source)

See more recommendations for this book...

10

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs has had a dramatic impact on computer science curricula over the past decade. This long-awaited revision contains changes throughout the text. There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published. A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in... more

Max LevchinEasier to read [than "The Art of Computer Programming"] end-to-end quickly. (Source)

Hadley WickhamThe most valuable thing this book gives you is confidence and knowledge to go and create your own programming language. (Source)

John Maeda@jesseddy The best book in classical and “hands-on example” terms is Structure and Interpretation of Computer Programs — but it requires maybe a year to get thru and for me, 10 years more to marinate over. *A* book is the one I am finishing now to come out Nov 2019. https://t.co/OODjQXgf1I (Source)

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
11
Algorithms are the heart and soul of computer science. Their applications range from network routing and computational genomics to public-key cryptography and machine learning. Studying algorithms can make you a better programmer, a clearer thinker, and a master of technical interviews. Algorithms Illuminated is an accessible introduction to the subject for anyone with at least a little programming experience. The exposition emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details---like a transcript of what an expert algorithms tutor... more

See more recommendations for this book...

12

Programming Pearls

The first edition of Programming Pearls was one of the most influential books I read early in my career, and many of the insights I first encountered in that book stayed with me long after I read it. Jon has done a wonderful job of updating the material. I am very impressed at how fresh the new examples seem. - Steve McConnell When programmers list their favorite books, Jon Bentley's collection of programming pearls is commonly included among the classics. Just as natural pearls grow from grains of sand that irritate oysters, programming pearls have grown from real problems that have... more
Recommended by Jeff Atwood, James Stanley, and 2 others.

James StanleyI very much enjoyed reading "Programming Pearls" by John Bentley. Most of the software we write is trying to solve fairly large and ill-defined problems in a way that minimises development cost, but Programming Pearls presents a lot of small, well-defined problems, and talks through their solutions in ways that minimise machine resource usage. There are lots of good "a-ha" moments when reading... (Source)

See more recommendations for this book...

13
The first revision of this third volume is the most comprehensivesurvey of classical computer techniques for sorting and searching. It extends thetreatment of data structures in Volume 1 to consider both large and smalldatabases and internal and external memories. The book contains a selection ofcarefully checked computer methods, with a quantitative analysis of theirefficiency. Outstanding features of the second edition include a revised sectionon optimum sorting and new discussions of the theory of permutations and ofuniversal hashing. less

See more recommendations for this book...

14

Algorithms Demystified

Have you ever wondered how your GPS can find the fastest way to your destination, selecting one route from seemingly countless possibilities in mere seconds? How your credit card account number is protected when you make a purchase over the Internet? The answer is algorithms. And how do these mathematical formulations translate themselves into your GPS, your laptop, or your smart phone? This book offers an engagingly written guide to the basics of computer algorithms. In "Algorithms Demystified," Thomas Cormen -- coauthor of the leading college textbook on the subject -- provides a general... more

See more recommendations for this book...

15

Algorithm Design

Algorithm Design introduces algorithms by looking at the real-world problems that motivate them. The book teaches students a range of design and analysis techniques for problems that arise in computing applications. The text encourages an understanding of the algorithm design process and an appreciation of the role of algorithms in the broader field of computer science.
August 6, 2009 Author, Jon Kleinberg, was recently cited in the New York Times for his statistical analysis research in the Internet age.

less

See more recommendations for this book...

16

Problem Solving with Algorithms and Data Structures Using Python

THIS TEXTBOOK is about computer science. It is also about Python. However, there is much more. The study of algorithms and data structures is central to understanding what computer science is all about. Learning computer science is not unlike learning any other type of difficult subject matter. The only way to be successful is through deliberate and incremental exposure to the fundamental ideas. A beginning computer scientist needs practice so that there is a thorough understanding before continuing on to the more complex parts of the curriculum. In addition, a beginner needs to be given the... more

See more recommendations for this book...

17

Algorithms in a Nutshell

Creating robust software requires the use of efficient algorithms, but programmers seldom think about them until a problem occurs. Algorithms in a Nutshell describes a large number of existing algorithms for solving a variety of problems, and helps you select and implement the right algorithm for your needs -- with just enough math to let you understand and analyze algorithm performance.

With its focus on application, rather than theory, this book provides efficient code solutions in several programming languages that you can easily adapt to a specific project. Each major...
more

See more recommendations for this book...

18
Imagine a world where your phone is too big for your hand, where your doctor prescribes a drug that is wrong for your body, where in a car accident you are 47% more likely to be seriously injured, where every week the countless hours of work you do are not recognised or valued. If any of this sounds familiar, chances are that you're a woman.

Invisible Women shows us how, in a world largely built for and by men, we are systematically ignoring half the population. It exposes the gender data gap – a gap in our knowledge that is at the root of perpetual, systemic discrimination against...
more

Konnie Huq@FenTiger697 @WokingAmnesty @CCriadoPerez @Hatchards @radioleary Brilliant book by the brilliant @CCriadoPerez 😍 (Source)

Feminist Next Door@Rockmedia Awesome book (Source)

Nigel ShadboltInvisible Women is an exposé of just how much of the world around us is designed around the default male. Deploying a huge range of data and examples, Caroline Criado Perez, who is a writer, broadcaster and award winning campaigner, presents on overwhelming case for change. Every page is full of facts and data that support her fundamental contention that in a world built for and by men, gender... (Source)

See more recommendations for this book...

19
Knuth's classic work has been widely acclaimed as one of the most influential works in the field of computer science. For the first time, these books are available as a boxed, three-volume set. The handsome slipcase makes this set an ideal gift for the recent computer science graduate or professional programmer. Offering a description of classical computer science, this multi-volume work is a useful resource in programming theory and practice for students, researchers, and practitioners alike. For programmers, it offers cookbook solutions to their day-to-day problems. less

See more recommendations for this book...

20
The first revision of this third volume is the most comprehensivesurvey of classical computer techniques for sorting and searching. It extends thetreatment of data structures in Volume 1 to consider both large and smalldatabases and internal and external memories. The book contains a selection ofcarefully checked computer methods, with a quantitative analysis of theirefficiency. Outstanding features of the second edition include a revised sectionon optimum sorting and new discussions of the theory of permutations and ofuniversal hashing. less

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
21
WARNING! To avoid buying counterfeit on Amazon, click on "See All Buying Options" and choose "Amazon.com" and not a third-party seller.

Concise and to the point — the book can be read during a week. During that week, you will learn almost everything modern machine learning has to offer. The author and other practitioners have spent years learning these concepts.

Companion wiki — the book has a continuously updated wiki that extends some book chapters with additional information: Q&A, code snippets, further reading, tools, and other relevant resources.
more
Recommended by Kirk Borne, and 1 others.

Kirk BorneRecent top-selling books in #AI & #MachineLearning: https://t.co/Ij9I7SzR4d ————— #BigData #DataScience #DataMining #Algorithms #PredictiveAnalytics #Python ————— ...in the TOP 10: 1)The Hundred-Page ML Book: https://t.co/dQ7nP6gwP0 2)Hands-on ML with...: https://t.co/Y0Iz3GbtGP https://t.co/72rAFN1FwW (Source)

See more recommendations for this book...

22
The great inventor and futurist Ray Kurzweil is one of the best-known and controversial advocates for the role of machines in the future of humanity. In his latest, thrilling foray into the future, he envisions an event--thesingularity--in which technological change becomes so rapid and so profound that our bodies and brains will merge with our machines.

The Singularity Is Near portrays what life will be like after this event--a human-machine civilization where our experiences shift from real reality to virtual reality and where our intelligence becomes nonbiological and...
more

Mark O'ConnellI wouldn’t be the first to look at him this way but I read Kurzweil’s work as essentially a work of religious mysticism. I think there’s no other way to read it, really. (Source)

Antonio EramThis book was recommended by Antonio when asked for titles he would recommend to young people interested in his career path. (Source)

Steve AokiIt opened me up to the idea of science fiction becoming science fact. (Source)

See more recommendations for this book...

23
The bible of all fundamental algorithms and the work that taught many of today's software developers most of what they know about computer programming. -Byte, September 1995 I can't begin to tell you how many pleasurable hours of study and recreation they have afforded me! I have pored over them in cars, restaurants, at work, at home... and even at a Little League game when my son wasn't in the line-up. -Charles Long If you think you're a really good programmer... read [Knuth's] Art of Computer Programming... You should definitely send me a resume if you can... more

See more recommendations for this book...

24
The rousing story of the last gasp of human agency and how today’s best and brightest minds are endeavoring to put an end to it.

It used to be that to diagnose an illness, interpret legal documents, analyze foreign policy, or write a newspaper article you needed a human being with specific skills—and maybe an advanced degree or two. These days, high-level tasks are increasingly being handled by algorithms that can do precise work not only with speed but also with nuance. These “bots” started with human programming and logic, but now their reach extends beyond what their...
more

See more recommendations for this book...

25

Hacker's Delight

Aiming to tell the dark secrets of computer arithmetic, this title is suitable for library developers, compiler writers, and lovers of elegant hacks. less

See more recommendations for this book...

26
Information theory and inference, often taught separately, are here united in one entertaining textbook. These topics lie at the heart of many exciting areas of contemporary science and engineering - communication, signal processing, data mining, machine learning, pattern recognition, computational neuroscience, bioinformatics, and cryptography. This textbook introduces theory in tandem with applications. Information theory is taught alongside practical communication systems, such as arithmetic coding for data compression and sparse-graph codes for error-correction. A toolbox of inference... more

See more recommendations for this book...

27
Longlisted for the National Book Award
New York Times Bestseller


A former Wall Street quant sounds an alarm on the mathematical models that pervade modern life -- and threaten to rip apart our social fabric

We live in the age of the algorithm. Increasingly, the decisions that affect our lives--where we go to school, whether we get a car loan, how much we pay for health insurance--are being made not by humans, but by mathematical models. In theory, this should lead to greater fairness: Everyone is judged according to the same rules, and bias is...
more
Recommended by Paula Boddington, Ramesh Srinivasan, and 2 others.

Paula BoddingtonHow the use of algorithms has affected people’s lives and occasionally ruined them. (Source)

Ramesh SrinivasanThis book is a really fantastic analysis of how quantification, the collection of data, the modelling around data, the predictions made by using data, the algorithmic and quantifiable ways of predicting behaviour based on data, are all built by elites for elites and end up, quite frankly, screwing over everybody else. (Source)

See more recommendations for this book...

28
Run a Google search for "black girls" - what will you find? "Big Booty" and other sexually explicit terms are likely to come up as top search terms. But, if you type in "white girls," the results are radically different. The suggested porn sites and un-moderated discussions about "why black women are so sassy" or "why black women are so angry" presents a disturbing portrait of black womanhood in modern society.

In Algorithms of Oppression, Safiya Umoja Noble challenges the idea that search engines like Google offer an equal playing field for all forms of ideas, identities,...
more
Recommended by Sherrilyn Ifill, and 1 others.

Sherrilyn IfillIt's our first Thurgood Marshall Institute podcast. A terrific discussion with Professor @safiyanoble, author of the must read book Algorithms of Oppression. Listen. @TMI_LDF https://t.co/6eq51hhrJH (Source)

See more recommendations for this book...

29
What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries.

Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who’s ever wondered about the secret inner life of...
more
Recommended by Ana Bell, and 1 others.

Ana BellIt gets you to use your imagination to virtually build a computer. It’s easy to read, you can lie down on the couch and enjoy it—it’s not so much of a textbook. It demystifies the magic of a computer and what it is. (Source)

See more recommendations for this book...

30
The Art of Computer Programming, Volume 4A: Combinatorial Algorithms, Part 1 Knuth's multivolume analysis of algorithms is widely recognized as the definitive description of classical computer science. The first three volumes of this work have long comprised a unique and invaluable resource in programming theory and practice. Scientists have marveled at the beauty and elegance of Knuth's analysis, while practicing programmers have successfully applied his "cookbook" solutions to their day-to-day problems. The level of these first three volumes has remained so high, and they... more

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
31
This book emphasizes the creative aspects of algorithm design by examining steps used in the process of algorithms development. The heart of this creative process lies in an analogy between proving mathematical theorems by induction and designing combinatorial algorithms. The book contains hundreds of problems and examples. It is designed to enhance the reader's problem-solving abilities and understanding of the principles behind algorithm design. less

See more recommendations for this book...

32
Superintelligence asks the questions: what happens when machines surpass humans in general intelligence? Will artificial agents save or destroy us? Nick Bostrom lays the foundation for understanding the future of humanity and intelligent life.

The human brain has some capabilities that the brains of other animals lack. It is to these distinctive capabilities that our species owes its dominant position. If machine brains surpassed human brains in general intelligence, then this new superintelligence could become extremely powerful--possibly beyond our control. As the fate of the...
more

Elon MuskWorth reading Superintelligence by Bostrom. We need to be super careful with AI. Potentially more dangerous than nukes. (Source)

Maria RamosRamos will take the summer to examine some of the questions weighing more heavily on humankind as we contemplate our collective future: what happens when we can write our own genetic codes, and what happens when we create technology that is meaningfully more intelligent than us. The Gene: An Intimate History—Siddhartha Mukherjee Superintelligence: Paths, Dangers, Strategies—Nick Bostrom The... (Source)

Will MacAskillI picked this book because the possibility of us developing human-level artificial intelligence, and from there superintelligence—an artificial agent that is considerably more intelligent than we are—is at least a contender for the most important issue in the next two centuries. Bostrom’s book has been very influential in effective altruism, lots of people work on artificial intelligence in order... (Source)

See more recommendations for this book...

33
Every day, we use our computers to perform remarkable feats. A simple web search picks out a handful of relevant needles from the world's biggest haystack: the billions of pages on the World Wide Web. Uploading a photo to Facebook transmits millions of pieces of information over numerous error-prone network links, yet somehow a perfect copy of the photo arrives intact. Without even knowing it, we use public-key cryptography to transmit secret information like credit card numbers; and we use digital signatures to verify the identity of the websites we visit. How do our computers perform these... more

See more recommendations for this book...

34

Data Structures and Algorithms

The authors' treatment of data structures in Data Structures and Algorithms is unified by an informal notion of "abstract data types," allowing readers to compare different implementations of the same concept. Algorithm design techniques are also stressed and basic algorithm analysis is covered. Most of the programs are written in Pascal. less

See more recommendations for this book...

35

Data Structures and Algorithms Made Easy

Peeling Data Structures and Algorithms for (C/C++ version): * Programming puzzles for interviews * Campus Preparation * Degree/Masters Course Preparation * Instructor's * GATE Preparation * Big job hunters: Microsoft, Google, Amazon, Yahoo, Flip Kart, Adobe, IBM Labs, Citrix, Mentor Graphics, NetApp, Oracle, Webaroo, De-Shaw, Success Factors, Face book, McAfee and many more * Reference Manual for working people less

See more recommendations for this book...

36

The Nature of Code

How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on a range of programming strategies and techniques behind computer simulations of natural systems, from elementary concepts in mathematics and physics to more advanced algorithms that enable sophisticated visual results. Readers will progress from building a basic physics engine to creating intelligent moving objects and complex systems, setting the foundation for... more

See more recommendations for this book...

37
Traditionally an area of study in computer science, string algorithms have, in recent years, become an increasingly important part of biology, particularly genetics. This volume is a comprehensive look at computer algorithms for string processing. In addition to pure computer science, Gusfield adds extensive discussions on biological problems that are cast as string problems and on methods developed to solve them. This text emphasizes the fundamental ideas and techniques central to today's applications. New approaches to this complex material simplify methods that up to now have been for the... more

See more recommendations for this book...

39

Code Complete

Widely considered one of the best practical guides to programming, Steve McConnell's original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices--and hundreds of new code samples--illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your... more

Santiago BasultoIf my career path is hackers turned business people, I’d say: Start with the basics and fundamentals: SICP: Structure and Interpretation of Computer Programs Code Complete 2 (Source)

Ana BellCode Complete is for people working in industry, writing software for companies. It has little checklists at key points in the book; if you are in industry, you can make sure that your code is readable and debugged by going through these checklists and making sure you’re touching upon all aspects. (Source)

See more recommendations for this book...

40

Compilers

Principles, Techniques, and Tools

This introduction to compilers is the direct descendant of the well-known book by Aho and Ullman, Principles of Compiler Design. The authors present updated coverage of compilers based on research and techniques that have been developed in the field over the past few years. The book provides a thorough introduction to compiler design and covers topics such as context-free grammars, fine state machines, and syntax-directed translation. less

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
42

Concrete Mathematics

A Foundation for Computer Science

Concrete Mathematics is a blending of CONtinuous and disCRETE mathematics. "More concretely," the authors explain, "it is the controlled manipulation of mathematical formulas, using a collection of techniques for solving problems." less

See more recommendations for this book...

43
Algorithms are the heart and soul of computer science. Their applications range from network routing and computational genomics to public-key cryptography and machine learning. Studying algorithms can make you a better programmer, a clearer thinker, and a master of technical interviews. Algorithms Illuminated is an accessible introduction to the subject for anyone with at least a little programming experience. The exposition emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details---like a transcript of what an expert algorithms tutor... more

See more recommendations for this book...

44
This is a larger-format version of Elements of Programming Interviews in Java. Specifically, the font size is larger, and the page size is 7"x10" (the regular format uses 6"x9").

The content is identical.

This is the Java version of our book. See our website for links to the C++ version. Have you ever...




Wanted to work at an exciting futuristic company?
Struggled with an interview problem that could have been solved in 15 minutes?
Wished you could study real-world computing problems?
If so,...
more

See more recommendations for this book...

45

Elements of Programming Interviews in Python

The Insiders' Guide

This is the Python version of our book. See the website for links to the C++ and Java version.Have you ever...


Wanted to work at an exciting futuristic company?
Struggled with an interview problem thatcould have been solved in 15 minutes?
Wished you could study real-world computing problems?
If so, you need to read Elements of Programming Interviews (EPI).

EPI is your comprehensive guide to interviewing for software development roles.

The core of EPI is a collection of over 250 problems with...
more

See more recommendations for this book...

46
Most books on data structures assume an imperative language such as C or C++. However, data structures for these languages do not always translate well to functional languages such as Standard ML, Haskell, or Scheme. This book describes data structures from the point of view of functional languages, with examples, and presents design techniques that allow programmers to develop their own functional data structures. The author includes both classical data structures, such as red-black trees and binomial queues, and a host of new data structures developed exclusively for functional languages.... more

See more recommendations for this book...

47

Elements of Programming Interviews

The Insiders' Guide C++

New! Java versions of all C++ programs in the book at http: //bit.ly/epi-programs Get a PDF sampler of EPI from http: //bit.ly/epi-sampler

Have you ever...

Wanted to work at an exciting futuristic company? Struggled with an interview problem that could have been solved in 15 minutes? Wished you could study real-world computing problems?

If so, you need to read Elements of Programming Interviews (EPI).

The...
more

See more recommendations for this book...

48

Deep Learning

An introduction to a broad range of topics in deep learning, covering mathematical and conceptual background, deep learning techniques used in industry, and research perspectives.

Deep learning is a form of machine learning that enables computers to learn from experience and understand the world in terms of a hierarchy of concepts. Because the computer gathers knowledge from experience, there is no need for a human computer operator to formally specify all the knowledge that the computer needs. The hierarchy of concepts allows the computer to learn complicated concepts by...
more

Elon MuskWritten by three experts in the field, Deep Learning is the only comprehensive book on the subject. (Source)

Nassim Nicholas TalebVery clear exposition, does the math without getting lost in the details. Although many of the concepts of the introductory first 100 pages can be found elsewhere, they are presented with remarkable cut-to-the-chase clarity. (Source)

Satya NadellaElon Musk and Facebook AI chief Yann LeCun have praised this textbook on one of software’s most promising frontiers. After its publication, Microsoft signed up coauthor Bengio, a pioneer in machine learning, as an adviser (Source)

See more recommendations for this book...

49

Pattern Recognition and Machine Learning

Pattern recognition has its origins in engineering, whereas machine learning grew out of computer science. However, these activities can be viewed as two facets of the same field, and together they have undergone substantial development over the past ten years. In particular, Bayesian methods have grown from a specialist niche to become mainstream, while graphical models have emerged as a general framework for describing and applying probabilistic models. Also, the practical applicability of Bayesian methods has been greatly enhanced through the development of a range of approximate inference... more

See more recommendations for this book...

50
A perennial bestseller by eminent mathematician G. Polya, How to Solve It will show anyone in any field how to think straight. In lucid and appealing prose, Polya reveals how the mathematical method of demonstrating a proof or finding an unknown can be of help in attacking any problem that can be "reasoned" out--from building a bridge to winning a game of anagrams. Generations of readers have relished Polya's deft--indeed, brilliant--instructions on stripping away irrelevancies and going straight to the heart of the problem. less

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
51
Gregory Zuckerman, the bestselling author of The Greatest Trade Ever and The Frackers, answers the question investors have been asking for decades: How did Jim Simons do it?

Shortlisted for the Financial Times/McKinsey Business Book of the Year Award


Jim Simons is the greatest money maker in modern financial history. No other investor--Warren Buffett, Peter Lynch, Ray Dalio, Steve Cohen, or George Soros--can touch his record. Since 1988, Renaissance's signature Medallion fund has generated average annual returns of 66 percent. The firm...
more

Abhishek Kar@Singh7575 ~The man who solved the market Nice book and interesting insights from Jim's life. Read it last month. Happy reading👍 (Source)

Andy SumI finished reading a book! Pretty interesting biography and background on some of the emotions involved in quantatative trading. Worth reading. https://t.co/doi843dcGN (Source)

Steve BurnsThe new book on Jim Simons is in my top 5 favorite trading books of all time ⭐️⭐️⭐️⭐️⭐️ It is already the #19 best seller in Amazon nonfiction The Man Who Solved the Market: How Jim Simons Launched the Quant Revolution Kindle Edition by Gregory Zuckerman https://t.co/FAZFigNNXy https://t.co/Jjz38Qpdnu (Source)

See more recommendations for this book...

52
Richard Bird takes a radically new approach to algorithm design, namely, design by calculation. These 30 short chapters each deal with a particular programming problem drawn from sources as diverse as games and puzzles, intriguing combinatorial tasks, and more familiar areas such as data compression and string matching. Each pearl starts with the statement of the problem expressed using the functional programming language Haskell, a powerful yet succinct language for capturing algorithmic ideas clearly and simply. The novel aspect of the book is that each solution is calculated from an... more

See more recommendations for this book...

53

Data Structures and Algorithms in Java, Second Edition is designed to be easy to read and understand although the topic itself is complicated. Algorithms are the procedures that software programs use to manipulate data structures. Besides clear and simple example programs, the author includes a workshop as a small demonstration program executable on a Web browser. The programs demonstrate in graphical form what data structures look like and how they operate. In the second edition, the program is rewritten to improve operation and clarify the algorithms, the example programs are...

more

See more recommendations for this book...

54
“The computer world is like an intellectual Wild West, in which you can shoot anyone you wish with your ideas, if you’re willing to risk the consequences.” —from Hackers & Painters: Big Ideas from the Computer Age, by Paul Graham

We are living in the computer age, in a world increasingly designed and engineered by computer programmers and software designers, by people who call themselves hackers. Who are these people, what motivates them, and why should you care?

Consider these facts: Everything around us is turning into computers. Your typewriter is...
more

Evan WilliamsI want everybody I know to read "How to Make Wealth" and "Mind the Gap" (chapters 6 and 7), which brilliantly articulate the most commonly, and frustratingly, misunderstood core economic principles of everyday life. (Source)

Yukihiro MatsumotoSince programmers create programs out of nothing, imagination is our only limitation. Thus, in the world of programming, the hero is the one who has great vision. Paul Graham is one of our contemporary heroes. He has the ability to embrace the vision, and to express it plainly. His works are my favorites, especially the ones describing language design. He explains secrets of programming,... (Source)

Chris AndersonA delightful ping-pong around the brain of a really smart guy. The chapter that answers the key question of our age-- why are nerds unpopular?-- is worth the price of admission alone. (Source)

See more recommendations for this book...

55
A thought-provoking and wide-ranging exploration of machine learning and the race to build computer intelligences as flexible as our own
In the world's top research labs and universities, the race is on to invent the ultimate learning algorithm: one capable of discovering any knowledge from data, and doing anything we want, before we even ask. In The Master Algorithm, Pedro Domingos lifts the veil to give us a peek inside the learning machines that power Google, Amazon, and your smartphone. He assembles a blueprint for the future universal learner--the Master Algorithm--and...
more
Recommended by Vinod Khosla, and 1 others.

Vinod KhoslaIf you want speculation about what the master AI might need (one view). For a slightly more technical read, I’d suggest Ian Goodfellows Deep Learning. (Source)

See more recommendations for this book...

56

Approximation Algorithms

Although this may seem a paradox, all exact science is dominated by the idea of approximation. Bertrand Russell (1872-1970) Most natural optimization problems, including those arising in important application areas, are NP-hard. Therefore, under the widely believed con jecture that P -=/= NP, their exact solution is prohibitively time consuming. Charting the landscape of approximability of these problems, via polynomial time algorithms, therefore becomes a compelling subject of scientific inquiry in computer science and mathematics. This book presents the theory of ap proximation algorithms... more

See more recommendations for this book...

57
Finally, after a wait of more than thirty-five years, the first part of Volume 4 is at last ready for publication. Check out the boxed set that brings together Volumes 1 - 4A in one elegant case, and offers the purchaser a $50 discount off the price of buying the four volumes individually. The Art of Computer Programming, Volumes 1-4A Boxed Set, 3/e ISBN: 0321751043 Art of Computer Programming, Volume 4, Fascicle 0, The: Introduction to Combinatorial Algorithms and Boolean Functions: Introduction to Combinatorial Algorithms and Boolean Functions This multivolume work on the analysis of... more

See more recommendations for this book...

58
Based on a new classification of algorithm design techniques and a clear delineation of analysis methods, Introduction to the Design and Analysis of Algorithms presents the subject in a coherent and innovative manner. Written in a student-friendly style, the book emphasizes the understanding of ideas over excessively formal treatment while thoroughly covering the material required in an introductory algorithms course. Popular puzzles are used to motivate students' interest and strengthen their skills in algorithmic problem solving. Other learning-enhancement features include... more

See more recommendations for this book...

60

Computer Science Distilled

Learn the Art of Solving Computational Problems

A foolproof walkthrough of must-know computer science concepts. Designed for readers who don't need the academic formality, it's a fast and easy computer science guide. It teaches essential concepts for people who want to program computers effectively. First, it introduces discrete mathematics, then it exposes the most common algorithms and data structures. It also shows the principles that make computers and programming languages work. less

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
61

Artificial Intelligence

A Modern Approach

For one or two-semester, undergraduate or graduate-level courses in Artificial Intelligence. The long-anticipated revision of this best-selling text offers the most comprehensive, up-to-date introduction to the theory and practice of artificial intelligence. *NEW-Nontechnical learning material-Accompanies each part of the book. *NEW-The Internet as a sample application for intelligent systems-Added in several places including logical agents, planning, and natural language. *NEW-Increased coverage of material - Includes expanded coverage of: default reasoning and truth maintenance systems,... more

See more recommendations for this book...

62
Buying groceries, tracking our health, finding a date: whatever we want to do, odds are that we can now do it online. But few of us realize just how many oversights, biases, and downright ethical nightmares are baked inside the tech products we use every day. It’s time we change that.


In Technically Wrong, Sara Wachter-Boettcher demystifies the tech industry, leaving those of us on the other side of the screen better prepared to make informed choices about the services we use—and to demand more from the companies behind them.


A Wired Top...
more

See more recommendations for this book...

63

Algorithms for Optimization

A comprehensive introduction to optimization with a focus on practical algorithms for the design of engineering systems.

This book offers a comprehensive introduction to optimization with a focus on practical algorithms. The book approaches optimization from an engineering perspective, where the objective is to design a system that optimizes a set of metrics subject to constraints. Readers will learn about computational approaches for a range of challenges, including searching high-dimensional spaces, handling problems where there are multiple competing objectives, and...
more

See more recommendations for this book...

64

An Introduction to the Analysis of Algorithms

People who analyze algorithms have double happiness. First of all they experience the sheer beauty of elegant mathematical patterns that surround elegant computational procedures. Then they receive a practical payoff when their theories make it possible to get other jobs done more quickly and more economically.... The appearance of this long-awaited book is therefore most welcome. Its authors are not only worldwide leaders of the field, they also are masters of exposition. --D. E. Knuth This book provides a thorough introduction to the primary techniques used in the mathematical analysis of... more

See more recommendations for this book...

65
Robert Sedgewick has thoroughly rewritten and substantially expanded and updated his popular work to provide current and comprehensive coverage of important algorithms and data structures. Christopher Van Wyk and Sedgewick have developed new C++ implementations that both express the methods in a concise and direct manner, and also provide programmers with the practical means to test them on real applications. Many new algorithms are presented, and the explanations of each algorithm are much more detailed than in previous editions. A new text design and detailed, innovative figures, with... more

See more recommendations for this book...

66
The pressure is on during the interview process but with the right preparation, you can walk away with your dream job. This classic book uncovers what interviews are really like at America's top software and computer companies and provides you with the tools to succeed in any situation. The authors take you step-by-step through new problems and complex brainteasers they were asked during recent technical interviews. 50 interview scenarios are presented along with in-depth analysis of the possible solutions. The problem-solving process is clearly illustrated so you'll be able to easily apply... more

See more recommendations for this book...

67

Learning From Data

A Short Course

Machine learning allows computational systems to adaptively improve their performance with experience accumulated from the observed data. Its techniques are widely applied in engineering, science, finance, and commerce. This book is designed for a short course on machine learning. It is a short course, not a hurried course. From over a decade of teaching this material, we have distilled what we believe to be the core topics that every student of the subject should know. We chose the title `learning from data' that faithfully describes what the subject is about, and made it a point to cover... more

See more recommendations for this book...

68

This highly anticipated revision builds upon the strengths of the previous edition. Sipser's candid, crystal-clear style allows students at every level to understand and enjoy this field. His innovative "proof idea" sections explain profound concepts in plain English. The new edition incorporates many improvements students and professors have suggested over the years, and offers updated, classroom-tested problem sets at the end of each chapter.

less

See more recommendations for this book...

69

Advanced Data Structures

Advanced Data Structures presents a comprehensive look at the ideas, analysis, and implementation details of data structures as a specialized topic in applied algorithms. Data structures are how data is stored within a computer, and how one can go about searching for data within. This text examines efficient ways to search and update sets of numbers, intervals, or strings by various data structures, such as search trees, structures for sets of intervals or piece-wise constant functions, orthogonal range search structures, heaps, union-find structures, dynamization and persistence of... more

See more recommendations for this book...

70
This text covers topics in algebraic geometry and commutative algebra with a strong perspective toward practical and computational aspects. The first four chapters form the core of the book. A comprehensive chart in the Preface illustrates a variety of ways to proceed with the material once these chapters are covered. In addition to the fundamentals of algebraic geometry the elimination theorem, the extension theorem, the closure theorem and the Nullstellensatz this new edition incorporates several substantial changes, all of which are listed in the Preface. The largest revision incorporates... more

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
71

Data Structures and Algorithms in Python

Based on the authors' market leading data structures books in Java and C++, this book offers a comprehensive, definitive introduction to data structures in Python by authoritative authors. Data Structures and Algorithms in Python is the first authoritative object-oriented book available for Python data structures. Designed to provide a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation, the text will maintain the same general structure as Data Structures and Algorithms in Java and Data Structures and... more

See more recommendations for this book...

72
Algorithms are the heart and soul of computer science. Their applications range from network routing and computational genomics to public-key cryptography and machine learning. Studying algorithms can make you a better programmer, a clearer thinker, and a master of technical interviews. Algorithms Illuminated is an accessible introduction to the subject for anyone with at least a little programming experience. The exposition emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details---like a transcript of what an expert algorithms tutor... more

See more recommendations for this book...

73
A comprehensive introduction to machine learning that uses probabilistic models and inference as a unifying approach.

Today's Web-enabled deluge of electronic data calls for automated methods of data analysis. Machine learning provides these, developing methods that can automatically detect patterns in data and then use the uncovered patterns to predict future data. This textbook offers a comprehensive and self-contained introduction to the field of machine learning, based on a unified, probabilistic approach.

The coverage combines breadth and depth, offering...
more
Recommended by Kirk Borne, and 1 others.

Kirk Borne[Book] #MachineLearning — a Probabilistic Perspective: https://t.co/wAZwLoUFGF ———— #BigData #Statistics #DataScience #DeepLearning #AI #Algorithms #StatisticalLiteracy #Mathematics #abdsc ——— ⬇Get this brilliant 1100-page 28-chapter highly-rated book: https://t.co/Tm2zchpHSu https://t.co/jprUDdzkj8 (Source)

See more recommendations for this book...

74
"…the best introduction to cryptography I've ever seen. … The book the National Security Agency wanted never to be published." –Wired Magazine

"…monumental… fascinating… comprehensive… the definitive work on cryptography for computer programmers…" –Dr. Dobb's Journal

"…easily ranks as one of the most authoritative in its field." —PC Magazine

"…the bible of code hackers." –The Millennium Whole Earth Catalog

This new edition of the cryptography classic provides you with a comprehensive survey of modern cryptography. The book details how programmers...
more
Recommended by Dominic Steil, and 1 others.

Dominic Steil[One of the five books recommends to young people interested in his career path.] (Source)

See more recommendations for this book...

75
Unlock the secrets to creating random mazes! Whether you're a game developer, an algorithm connoisseur, or simply in search of a new puzzle, you're about to level up. Learn algorithms to randomly generate mazes in a variety of shapes, sizes, and dimensions. Bend them into Moebius strips, fold them into cubes, and wrap them around spheres. Stretch them into other dimensions, squeeze them into arbitrary outlines, and tile them in a dizzying variety of ways. From twelve little algorithms, you'll discover a vast reservoir of ideas and inspiration.

From video games to movies, mazes are...
more

See more recommendations for this book...

76

From Mathematics to Generic Programming

In this substantive yet accessible book, pioneering software designer Alexander Stepanov and his colleague Daniel Rose illuminate the principles of generic programming and the mathematical concept of abstraction on which it is based, helping you write code that is both simpler and more powerful. If you're a reasonably proficient programmer who can think logically, you have all the background you'll need. Stepanov and Rose introduce the relevant abstract algebra and number theory with exceptional clarity. They carefully explain the problems mathematicians first needed to solve, and then show... more

See more recommendations for this book...

78
This book brings together - in an informal and tutorial fashion - the computer techniques, mathematical tools, and research results that will enable both students and practitioners to apply genetic algorithms to problems in many fields. Major concepts are illustrated with running examples, and major algorithms are illustrated by Pascal computer programs. No prior knowledge of GAs or genetics is assumed, and only a minimum of computer programming and mathematics background is required. 0201157675B07092001 less

See more recommendations for this book...

79
Discover how graph algorithms can help you leverage the relationships within your data to develop more intelligent solutions and enhance your machine learning models. You'll learn how graph analytics are uniquely suited to unfold complex structures and reveal difficult-to-find patterns lurking in your data. Whether you are trying to build dynamic network models or forecast real-world behavior, this book illustrates how graph algorithms deliver value--from finding vulnerabilities and bottlenecks to detecting communities and improving machine learning predictions.

This practical book...
more
Recommended by Kirk Borne, and 1 others.

Kirk BorneGreat book: "Graph Algorithms: Practical Examples in #ApacheSpark and @Neo4j" by @amyhodler & @markhneedham, with the Foreward by me😎 ———— Get FREE PDF copy: https://t.co/61yQgYUrud ———— #GraphAnalytics #BigData #GraphDB #LinkedData #SmartData #DataScience #AI #MachineLearning https://t.co/BQaK75O7mP (Source)

See more recommendations for this book...

80

Windows Internals, Part 1

User Mode

Delve inside Windows architecture and internals - and see how core components work behind the scenes. This classic guide has been fully updated for Windows 8.1 and Windows Server 2012 R2, and now presents its coverage in three volumes: Book 1, User Mode; Book 2, Kernel Mode; Book 3, Device Driver Models.

In Book 1, you'll plumb Windows fundamentals, independent of platform - server, desktop, tablet, phone, Xbox. Coverage focuses on high-level functional descriptions of the various Windows components and features that interact with, or are manipulated by, user mode programs, or...
more
Recommended by Rob Fuller, and 1 others.

Rob Fuller@maddiestone Awesome book, I've read a couple editions and always learn new things. Have fun ;-) I would also recommend reading the older editions they have tricks and info that seem to disappear in newer ones. (Source)

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
81
A friendly and accessible introduction to the most useful algorithms

Computer algorithms are the basic recipes for programming. Professional programmers need to know how to use algorithms to solve difficult programming problems. Written in simple, intuitive English, this book describes how and when to use the most practical classic algorithms, and even how to create new algorithms to meet future needs. The book also includes a collection of questions that can help readers prepare for a programming job interview.

Reveals methods for manipulating common data...
more

See more recommendations for this book...

82

Mastering Algorithms with C

There are many books on data structures and algorithms, including some with useful libraries of C functions. Mastering Algorithms with C offers you a unique combination of theoretical background and working code. With robust solutions for everyday programming tasks, this book avoids the abstract style of most classic data structures and algorithms texts, but still provides all of the information you need to understand the purpose and use of common programming techniques.

Implementations, as well as interesting, real-world examples of each data structure and algorithm, are...
more

See more recommendations for this book...

83
What are the jobs of the future? How many will there be? And who will have them? We might imagine—and hope—that today's industrial revolution will unfold like the last: even as some jobs are eliminated, more will be created to deal with the new innovations of a new era. In Rise of the Robots, Silicon Valley entrepreneur Martin Ford argues that this is absolutely not the case. As technology continues to accelerate and machines begin taking care of themselves, fewer people will be necessary. Artificial intelligence is already well on its way to making “good jobs” obsolete: many... more
Recommended by Matthew Barby, and 1 others.

Matthew BarbyOn the other side of things, which is a bit more like inspirational and a bit more tactical, it would probably be Rise of the Robots. Focuses all on the rise of artificial intelligence. Has some really interesting pieces on how people are disrupting in a bunch of different verticals for like ED Tech, health, 3D printing, and a bunch of other areas, and the impact that that has on jobs in the... (Source)

See more recommendations for this book...

84
Machine learning has become an integral part of many commercial applications and research projects, but this field is not exclusive to large companies with extensive research teams. If you use Python, even as a beginner, this book will teach you practical ways to build your own machine learning solutions. With all the data available today, machine learning applications are limited only by your imagination.

You'll learn the steps necessary to create a successful machine-learning application with Python and the scikit-learn library. Authors Andreas Muller and Sarah Guido focus on the...
more
Recommended by Francesco Marconi, and 1 others.

Francesco MarconiTop programming languages ranked by its annual search engine popularity. Python has gained momentum because of its importance to machine learning development. At @WSJ we are using it to build tools for journalists. Tip: this is a great book for anyone who wants to get started! https://t.co/ZsHjqB5gvC (Source)

See more recommendations for this book...

85

Programming Challenges

The Programming Contest Training Manual

There are many distinct pleasures associated with computer programming. Craftsm- ship has its quiet rewards, the satisfaction that comes from building a useful object and making it work. Excitement arrives with the ?ash of insight that cracks a previously intractable problem. The spiritual quest for elegance can turn the hacker into an artist. Therearepleasuresinparsimony, insqueezingthelastdropofperformanceoutofclever algorithms and tight coding. Thegames, puzzles, andchallengesofproblemsfrominternationalprogrammingc-... more

See more recommendations for this book...

86

Machine Learning

Mitchell covers the field of machine learning, the study of algorithms that allow computer programs to automatically improve through experience and that automatically infer general laws from specific data. less
Recommended by Daniel H Wilson, and 1 others.

Daniel H WilsonYes, Machine Learning is a textbook and I would call it the textbook for machine learning and artificial intelligence. Machine learning is just the math of teaching a machine how to solve a problem on its own, because you’re not going to be able to be there to solve it for the machine. It can be any kind of problem: it could be a robot that needs to figure out how to get from point A to point B... (Source)

See more recommendations for this book...

87
Table of Contents: goo.gl/VLEUca
Sample Chapter: goo.gl/8AEcYk
Source Code: goo.gl/L8Xxdt

It is the Python version of "Data Structures and Algorithms Made Easy".

The sample chapter should give you a very good idea of the quality and style of our book. In particular, be sure you are comfortable with the level and with our Python coding style.

This...
more

See more recommendations for this book...

89

Algorithmic Puzzles

While many think of algorithms as specific to computer science, at its core algorithmic thinking is defined by the use of analytical logic to solve problems. This logic extends far beyond the realm of computer science and into the wide and entertaining world of puzzles. In Algorithmic Puzzles, Anany and Maria Levitin use many classic brainteasers as well as newer examples from job interviews with major corporations to show readers how to apply analytical thinking to solve puzzles requiring well-defined procedures.
The book's unique collection of puzzles is supplemented with...
more

See more recommendations for this book...

90
The Most Human Human is a provocative, exuberant, and profound exploration of the ways in which computers are reshaping our ideas of what it means to be human. Its starting point is the annual Turing Test, which pits artificial intelligence programs against people to determine if computers can “think.”

Named for computer pioneer Alan Turing, the Tur­ing Test convenes a panel of judges who pose questions—ranging anywhere from celebrity gossip to moral conundrums—to hidden contestants in an attempt to discern which is human and which is a computer. The machine that most often fools...
more
Recommended by Vinod Khosla, Vinod Khosla, and 2 others.

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
91

How to Think About Algorithms

There are many algorithm texts that provide lots of well-polished code and proofs of correctness. This book is not one of them. Instead, this book presents insights, notations, and analogies to help the novice describe and think about algorithms like an expert. By looking at both the big picture and easy step-by-step methods for developing algorithms, the author helps students avoid the common pitfalls. He stresses paradigms such as loop invariants and recursion to unify a huge range of algorithms into a few meta-algorithms. Part of the goal is to teach the students to think abstractly.... more

See more recommendations for this book...

92
Learn the skills necessary to design, build, and deploy applications powered by machine learning. Through the course of this hands-on book, you'll build an example ML-driven application from initial idea to deployed product. Data scientists, software engineers, and product managers with little or no ML experience will learn the tools, best practices, and challenges involved in building a real-world ML application step-by-step.

Author Emmanuel Ameisen, who worked as a data scientist at Zipcar and led Insight Data Science's AI program, demonstrates key ML concepts with code snippets,...
more

See more recommendations for this book...

93
In computer science, more specifically computational complexity theory, Computers and Intractability: A Guide to the Theory of NP-Completeness is an influential textbook by Michael Garey and David S. Johnson. It was the first book exclusively on the theory of NP-completeness and computational intractability. The book features an appendix providing a thorough compendium of NP-complete problems (which was updated in later printings of the book). The book is now outdated in some respects as it does not cover more recent development such as the PCP theorem. It is nevertheless still in print and... more

See more recommendations for this book...

94
Rewire your brain

Examples in this book are written in C++, but will improve your ability to think like a programmer in any language.

The real challenge of programming isn't learning a language's syntax—it's learning to creatively solve problems so you can build something great. In this one-of-a-kind text, author V. Anton Spraul breaks down the ways that programmers solve problems and teaches you what other introductory books often ignore: how to Think Like a Programmer. Each chapter tackles a single programming concept, like classes, pointers, and...
more

See more recommendations for this book...

95
This invaluable textbook presents a comprehensive introduction to modern competitive programming. The text highlights how competitive programming has proven to be an excellent way to learn algorithms, by encouraging the design of algorithms that actually work, stimulating the improvement of programming and debugging skills, and reinforcing the type of thinking required to solve problems in a competitive setting. The book contains many "folklore" algorithm design tricks that are known by experienced competitive programmers, yet which have previously only been formally discussed in online... more

See more recommendations for this book...

96

Understanding Machine Learning

From Theory to Algorithms

Machine learning is one of the fastest growing areas of computer science, with far-reaching applications. The aim of this textbook is to introduce machine learning, and the algorithmic paradigms it offers, in a principled way. The book provides an extensive theoretical account of the fundamental ideas underlying machine learning and the mathematical derivations that transform these principles into practical algorithms. Following a presentation of the basics of the field, the book covers a wide array of central topics that have not been addressed by previous textbooks. These include a... more

See more recommendations for this book...

97
Finally, you can learn computation theory and programming language design in an engaging, practical way. Understanding Computation explains theoretical computer science in a context you’ll recognize, helping you appreciate why these ideas matter and how they can inform your day-to-day programming.

Rather than use mathematical notation or an unfamiliar academic programming language like Haskell or Lisp, this book uses Ruby in a reductionist manner to present formal semantics, automata theory, and functional programming with the lambda calculus. It’s ideal for programmers versed in...
more

See more recommendations for this book...

98
Once again, Robert Sedgewick provides a current and comprehensive introduction to important algorithms. The focus this time is on graph algorithms, which are increasingly critical for a wide range of applications, such as network connectivity, circuit design, scheduling, transaction processing, and resource allocation. In this book, Sedgewick offers the same successful blend of theory and practice with concise implementations that can be tested on real applications, which has made his work popular with programmers for many years. Algorithms in C, Third Edition, Part 5: Graph... more

See more recommendations for this book...

99

Algorithmic Game Theory

In the last few years game theory has had a substantial impact on computer science, especially on Internet- and e-commerce-related issues. More than 40 of the top researchers in this field have written chapters that go from the foundations to the state of the art. Basic chapters on algorithmic methods for equilibria, mechanism design and combinatorial auctions are followed by chapters on incentives and pricing, cost sharing, information markets and cryptography and security. Students, researchers and practitioners alike need to learn more about these fascinating theoretical developments and... more

See more recommendations for this book...

100
Providing a thorough, well-written and thoughtful study of the fundamental theoretical ideas of computing and examining how to design accurate and efficient algorithms, this book is ideal for an introductory course emphasizing theory rather than programming. less

See more recommendations for this book...

Don't have time to read the top Algorithms books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.