Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Recursion
Rating: 4.5 out of 5(136 ratings)
1,543 students

Recursion

A detailed course that covers all what you need to know to be comfortable with recursion and not be afraid of it anymore
Created byInside Code
Last updated 4/2021
English

What you'll learn

  • Recursion
  • Recursive process
  • Optimizing a recursive function (with memoization and dynamic programming)
  • Algorithmic techniques based on recursion (backtracking and divide-and-conquer)
  • Tail recursion
  • Breaking down a problem into subproblems of the same type

Coding Exercises

This course includes our updated coding exercises so you can practice your skills as you learn.

See a demo
Image of coding exercise example

Course content

23 sections44 lectures5h 2m total length
  • What is recursion?9:12
    • What is recursion?

    • How to always win the tower of Hanoi game with recursion

    • Examples of recursion

  • Code and execution22:48
    • How is a recursive function made?

    • Base cases and recursive cases

    • How to write a recursive function?

    • What happens when a recursive function gets executed?

    • Call stack

  • Base cases and recursive cases4:04
    • What are base cases and recursive cases?

    • How to identify base cases and recursive cases?

Requirements

  • Basic programming knowledge

Description

WARNING: The instructor is not currently available to answer questions regarding this course


Even if the concept of recursion is simple, a lot of people struggle with it (not understanding the recursive process, not being able to figure out the base cases and recursive cases...), this is why I wanted to create a course on recursion that explains it and illustrates it in detail, it also contains 11 solved and explained coding problems to practice.

And knowing recursion will also give you a new way of thinking, which is dividing the problem into multiple instances of the same problem, which will help you understanding techniques like dynamic programming, backtracking...

See you in the first lecture!

The course covers:

  • What is recursion

  • Code and execution

  • Base cases and recursive cases

  • Multiple recursive calls process

  • Call stack

  • Recursion tree

  • How to visualize the process

  • Recursive functions complexity analysis (time and space comp)

  • Recursion vs Iteration

  • How to optimize a recursive function (memoization and dynamic programming)

  • Divide-and-conquer

  • Backtracking

  • Recursive data structures

  • Tail recursion

  • Double recursion

  • How to think recursively

Plus 11 solved and explained coding problems to practice:

  • Sum of digits

  • Count occurrences

  • Has adjacent duplicates

  • Reverse string

  • Minimum cost path in matrix

  • All possible phrases

  • Keypad combinations

  • String subsequences

  • Binary numbers with at most 2 zeros

  • Word search

  • Array permutations


Why you should take this course:

  • Detailed explanation of how the recursive process works

  • Animated examples

  • Good audio/video quality

  • Real English captions

  • Contains coding problems to practice

  • Ability to ask questions if you don't understand something

Who this course is for:

  • Programmers
  • Computer science students
  • Engineering students
  • Competitive programmers
  • Self-learning people