# A is for Algorithms

How do you think like a programmer?

If programming is problem solving, we need one or more heuristics specific to this domain.

We’re in luck!

There’s a set of methods used for defining and solving a problem in terms that a computer could also perform. It’s called, you’ll never guess… computational thinking.

The four stages of computational thinking are:

• Decomposition
• Generalization
• Abstraction
• Algorithm

If composing a function is the process of assembling the various components, such as variables, control flow, and conditions, then decomposition is the opposite: it’s breaking a problem down into smaller parts.

This is both the easiest and the hardest step in the process because sometimes the component parts of a problem are obvious, but other times the component parts are emergent, or intertwined, and it’s difficult to cleanly separate them.

When we break a problem down into smaller pieces, we will often recognize patterns. Another way of saying this is that we generalize. We make a broad statement by inferring from specific cases.

Once we recognize patterns, we can remove the details, or form abstractions, in order to focus on the relationships between concepts.

Finally, we simply need to write a series of repeatable steps to solve our problem, otherwise known as an algorithm.

How do you put these into practice?

Learn how in A is for Algorithms!

We'll break down and reveal the patterns in the 26 most important algorithms a programmer needs to know, including the following:

• Insertion Sort
• Selection Sort
• Quick Sort
• Merge Sort
• Heap Sort
• Linear Search
• Binary Search
• Depth First-Search
• Djikstra's
• The Sieve of Erasthones

...and more!

In JavaScript!

Give yourself an A. Grab your copy of A is for Algorithms today!

You've purchased this product

Sorry, this item is not available in your location.
Sold out, please go back and pick another option.
##### On November 12th, 12PM EST
• The 26 building blocks of computer science every programmer needs to learn in .pdf format.

Checkout

#### Card

···· ···· ···· 4242
Test card

05/18

#### Card

Use a different card?

#### Card

or pay with

We do not keep any of your sensitive credit card information on file with us unless you ask us to after this purchase is complete.

or pay with

You'll be charged US\$26.