• Unit 5: Recursion

    Often considered one of the more conceptually difficult concepts within the field of Computer Science, recursion - the act of a function invoking itself - is a powerful and relevant tool for any Computer Scientist. In this unit, we will take an in-depth look at recursion, learning the recursive steps, the role that recursion plays in common data structures, and what happens inside the computer when a recursion function is invoked. By the end of this unit, you will recognize situations that require recursion and be able to apply it appropriately.

    Note: Recursion can be a difficult concept for some students new to the field of Computer Science. This anxiety is best resolved through the use of an example. For this module, we will employ the use of recursion to write a program to express the "factorial" function. This straightforward example will give the student an overview of all the major components of recursion.

    Completing this unit should take you approximately 5 hours.

    • 5.1: Definition

      • 5.1.1: Divide and Conquer

      • 5.1.2: Applying Recursion

      • 5.1.3: Recursive Structures

      • 5.1.4: Recursive Steps

      • 5.1.5: Examples of Recursion

    • 5.2: Recursive Algorithms