CAB201

icon picker
CAB201 Recursion

C# Recursion: A Quick Guide

Recursion in C# is a programming technique where a method calls itself to solve a problem. It's like a function that keeps repeating itself until it reaches a specific condition.

Key Concepts

Base Case: The condition that stops the recursion ​Recursive Case: The part where the function calls itself

How It Works

The function calls itself with a simpler version of the problem
This continues until it reaches the base case
Once the base case is met, the function starts returning values back up the chain

Advantages

Can make code more readable for certain problems
Useful for tasks that have a recursive nature (e.g., tree structures, fractals)

Disadvantages

Can be memory-intensive for deep recursions
May be slower than iterative solutions for some problems

Simple Example: Sum Calculation

Here's a small program demonstrating recursion to calculate factorial:
using System;

class Program
{
static int Sum(int number)
{
// Base case
if (number == 1)
return 1;
// Recursive case
int smallerSum = Sum(number - 1);
int totalSum = number + smallerSum;
return totalSum;
}

static void Main(string[] args)
{
Console.WriteLine("Sum of numbers from 1 to 5: " + Sum(5));
}
}
This program calculates the sum of numbers from 1 to 5, which is 1 + 2 + 3 + 4 + 5 = 15.

Tips for Using Recursion

Always define a base case to avoid infinite recursion
Ensure the problem gets smaller with each recursive call
Consider using iteration for simple problems to avoid overhead
Remember, while recursion can be powerful, it's not always the best solution. Choose it when it makes your code clearer and more intuitive.
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.