Recurse Instead of Loop

Let’s say you work at NASA and need to program a countdown function for launching spacecraft. The particular function that you’re asked to write should accept a number—such as 10—and display the numbers from 10 down to 0. Take a moment and implement this function in the language of your choice. When you’re done, read on.

Odds are that you wrote a simple loop, along the lines of this JavaScript implementation:

 function​ countdown(number) {
 for​(​var​ i = number; i >= 0; i--) {
  console.log(i);
  }
 }
 countdown(10);

There’s nothing wrong with this implementation, but it may have never occurred to you that you don’t have to use a loop.

How?

Let’s try recursion instead. Here’s a first attempt at using recursion to ...

Get A Common-Sense Guide to Data Structures and Algorithms now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.