Grokking Algorithms: An illustrated guide for programmers by Aditya Bhargava

By Aditya Bhargava


Grokking Algorithms is an absolutely illustrated, pleasant consultant that teaches you ways to use universal algorithms to the sensible difficulties you face on a daily basis as a programmer. you are going to begin with sorting and looking out and, as you building up your abilities in pondering algorithmically, you will take on extra complicated issues comparable to information compression and synthetic intelligence. each one conscientiously awarded instance comprises important diagrams and entirely annotated code samples in Python.

Purchase of the print ebook encompasses a loose e-book in PDF, Kindle, and ePub codecs from Manning Publications.

About the Technology

An set of rules is not anything greater than a step by step method for fixing an issue. The algorithms you are going to use mainly as a programmer have already been came upon, established, and confirmed. for you to comprehend them yet refuse to slog via dense multipage proofs, this is often the e-book for you. This totally illustrated and fascinating advisor makes it effortless to benefit find out how to use crucial algorithms successfully on your personal programs.

About the Book

Grokking Algorithms is a pleasant tackle this middle machine technological know-how subject. In it, you will follow universal algorithms to the sensible programming difficulties you face on a daily basis. you will commence with initiatives like sorting and looking out. As you increase your abilities, you will take on extra advanced difficulties like information compression and synthetic intelligence. each one conscientiously awarded instance contains precious diagrams and entirely annotated code samples in Python. by way of the tip of this e-book, you have mastered greatly acceptable algorithms in addition to how and while to take advantage of them.

What's Inside

  • Covers seek, variety, and graph algorithms
  • Over four hundred photos with distinctive walkthroughs
  • Performance trade-offs among algorithms
  • Python-based code samples

About the Reader

This easy-to-read, picture-heavy advent is acceptable for self-taught programmers, engineers, or an individual who desires to brush up on algorithms.

About the Author

Aditya Bhargava is a software program Engineer with a twin historical past in laptop technological know-how and superb Arts. He blogs on programming at

Table of Contents

  1. Introduction to algorithms
  2. Selection sort
  3. Recursion
  4. Quicksort
  5. Hash tables
  6. Breadth-first search
  7. Dijkstra’s algorithm
  8. Greedy algorithms
  9. Dynamic programming
  10. K-nearest neighbors

Show description

Read Online or Download Grokking Algorithms: An illustrated guide for programmers and other curious people PDF

Similar user experience & usability books

Verteilte Führungsinformationssysteme

Rückblick und Sachstand der technologischen Aspekte bei der Entwicklung verteilter Führungsinformationssysteme, einer zentralen Aufgabe in der Bundeswehr sowie bei Behörden und Organisationen mit Sicherheitsaufgeben (z. B. Polizei, Rettungskräfte). Vornehmlich Wissenschaftler der Abteilung Informationstechnik für Führungssysteme des Forschungsinstituts für Kommunikation, Informationsverarbeitung und Ergonomie beschreiben basierend auf einer 40-jährigen Erfahrung in diesem Anwendungsgebiet Konzepte und Einzelaspekte bei der Gestaltung von Führungsinformationssystemen.

Digital Libraries: People, Knowledge, and Technology: 5th International Conference on Asian Digital Libraries, ICADL 2002, Singapore, December 11-14, 2002. Proceedings

The foreign convention on Asian electronic Libraries (ICADL) is an annual overseas discussion board for individuals to replace learn effects, cutting edge principles, and state of the art advancements in electronic libraries. equipped upon the successes of the 1st 4 ICADL meetings, the fifth ICADL convention in Singapore used to be aimed toward extra strengthening the placement of ICADL as a foremost electronic library convention that attracts prime quality papers and shows from all over the global, whereas assembly the desires and pursuits of electronic library groups within the Asia-Pacific quarter.

Subject-Oriented Business Process Management

Actions played in companies are coordinated through verbal exchange among the folks concerned. The sentences used to speak are evidently based through topic, verb, and item. the topic describes the actor, the verb the motion and the article what's tormented by the motion. Subject-oriented enterprise strategy administration (S-BPM) as provided during this ebook relies in this easy constitution which allows process-oriented pondering and strategy modeling.

RoboCup 2015: Robot World Cup XIX

This e-book is the court cases of the nineteenth Annual RoboCup foreign Symposium, held in Hefei, China, in July 2015. The booklet comprises 20 papers provided on the Symposium, rigorously chosen from 39 submissions. also the publication includes eleven champion staff papers and one paper from the Workshop on Benchmarking carrier Robots.

Additional info for Grokking Algorithms: An illustrated guide for programmers and other curious people

Sample text

This data structure is called a stack. The stack is a simple data structure. You’ve been using a stack this whole time without realizing it! The stack The call stack Your computer uses a stack internally called the call stack. Let’s see it in action. ” bye() This function greets you and then calls two other functions. ” Let’s walk through what happens when you call a function. Note print is a function in Python, but to make things easier for this example, we’re pretending it isn’t. Just play along.

Selection sort Let’s put it all together to learn your second algorithm: selection sort. To follow this section, you need to understand arrays and lists, as well as Big O notation. Suppose you have a bunch of music on your computer. For each artist, you have a play count. You want to sort this list from most to least played, so that you can rank your favorite artists. How can you do it? Selection sort One way is to go through the list and find the most-played artist. Add that artist to a new list.

5 You want to read the numbers of every person in the phone book. 6 You want to read the numbers of just the As. (This is a tricky one! It involves concepts that are covered more in chapter 4. ” Well, let me try to prove you wrong! Here’s an example of an algorithm with a really bad running time. This is a famous problem in computer science, because its growth is appalling and some very smart people think it can’t be improved. It’s called the traveling salesperson problem. You have a salesperson.

Download PDF sample

Rated 4.73 of 5 – based on 27 votes