Difference between revisions of "Recursion"

From Conservapedia
Jump to navigation Jump to search
(Undo revision 749962 by AlexWD (Talk))
(Undo revision 749963 by TrueClarity (Talk))
Line 1: Line 1:
#REDIRECT [[Recursion]]
+
'''Recursion''' is a technique whereby a [[function]], in order to accomplish a task, calls itself to accomplish part of the task.
 +
 
 +
Every recursive solution involves two major parts or cases, the second part having three components:
 +
 
 +
* base case(s), in which the problem is simple enough to be solved directly, and
 +
* recursive case(s). A recursive case has three components:
 +
::1. divide the problem into one or more simpler or smaller parts of the problem,
 +
::2. call the function (recursively) on each part, and
 +
::3. combine the solutions of the parts into a solution for the problem.
 +
 
 +
These exercises are useful to see examples of recursion:
 +
 
 +
:1. Write a function to compute the sum of all numbers from 1 to n.
 +
:2. Write a function to compute 2 to the power of a non-negative integer.
 +
:3. Write a function to compute any number to the power of a non-negative integer.
 +
 
 +
[[Category:Computer Science]]

Revision as of 05:49, January 28, 2010

Recursion is a technique whereby a function, in order to accomplish a task, calls itself to accomplish part of the task.

Every recursive solution involves two major parts or cases, the second part having three components:

  • base case(s), in which the problem is simple enough to be solved directly, and
  • recursive case(s). A recursive case has three components:
1. divide the problem into one or more simpler or smaller parts of the problem,
2. call the function (recursively) on each part, and
3. combine the solutions of the parts into a solution for the problem.

These exercises are useful to see examples of recursion:

1. Write a function to compute the sum of all numbers from 1 to n.
2. Write a function to compute 2 to the power of a non-negative integer.
3. Write a function to compute any number to the power of a non-negative integer.