jwalsh / jwalsh/hy-algorithms

Implement recursive algorithm patterns

Open
#23 0 comments 0 reactions 0 assignees View on GitHub
difficulty:medium recursion
Dominant language
Hy
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Create implementations for common recursive algorithm patterns:

## Fundamental patterns:
- Linear recursion
- Binary recursion
- Tail recursion (with optimization)
- Mutual recursion
- Nested recursion
- Multiple recursion

## Classic recursive problems:
- Tower of Hanoi
- Factorial calculation
- Fibonacci sequence
- Binary search
- Merge sort
- Quick sort
- Power function

## Advanced techniques:
- Memoization implementation
- Tail recursion optimization
- Recursion to iteration conversion
- Recurrence relation analysis

## Requirements:
- Provide detailed explanations of recursion mechanics
- Include illustrations of the call stack
- Document time and space complexity
- Compare recursive vs iterative approaches

This collection will demonstrate proper implementation of recursive algorithms with a focus on understanding the underlying principles and optimization techniques.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.