A detailed guide to understanding recursion using JavaScript, exploring common use cases and detailing ways to approach these kinds of algorithmic challenges.
Overview
Syllabus
Introduction
- Introduction to recursion algorithms in JavaScript
- Get the most out of this course
- Loops and iteration in JavaScript
- Implement exponentials and factorials with JavaScript loops
- What is recursion?
- What are base cases?
- Implement exponentials and factorials with recursion
- Challenge: Implement the join() function recursively
- Solution: Implement the join() function recursively
- What is tail recursion?
- Wrapper functions in JavaScript
- Accumulators for tail recursion
- Memoization to improve performance of recursive programs
- JavaScript quickSort() with recursion
- How to approach recursive problems
- Challenge: Identify a palindrome
- Solution: Identify a palindrome
- Challenge: Count the number of leaves in a binary tree
- Solution: Count the number of leaves in a binary tree
- Challenge: Find middle of LinkedList
- Solution: Find middle of LinkedList
- Dig deeper into JavaScript recursion
Taught by
Mustapha Rufai