๐ŸŽ New User? Get 20% off your first purchase with code NEWUSER20 ยท โšก Instant download ยท ๐Ÿ”’ Secure checkout Register Now โ†’
Menu

Categories

Programming Concepts Intermediate

What is Recursion?

A programming technique where a function calls itself to solve a problem by breaking it into smaller subproblems.

Recursion solves problems by having a function call itself with modified parameters until reaching a base case. Classic examples include factorial calculation, Fibonacci numbers, tree traversal, and divide-and-conquer algorithms.

Every recursive solution needs a base case (stopping condition) to prevent infinite recursion. Tail recursion can be optimized by compilers. Some problems are naturally recursive (tree/graph traversal), while iterative solutions may be more efficient for others.

Related Terms

Data Structure
A way of organizing and storing data in a computer so it can be accessed and modified efficiently.
Composition over Inheritance
A design principle favoring object composition (has-a relationships) over class inheritance (is-a relationships) for code reuse.
Observer Pattern
A design pattern where an object (subject) maintains a list of dependents (observers) that are notified automatically of state changes.
API Design
The practice of designing application programming interfaces that are consistent, intuitive, and maintainable for developers to consume.
Design Pattern
A reusable solution template for commonly occurring problems in software design.
Clean Code
Code that is easy to read, understand, and maintain โ€” following consistent conventions, meaningful naming, and single-responsibility functions.
View All Programming Concepts Terms โ†’