**COURSE**

# Recursion and Trees

In our Recursion and Tree Structures course, you will learn about recursion and how it applies to tree data structures. You will also learn how tree data structures are used to speed up the processing of analysis tasks.

We’ll cover recursion, binary trees, binary heaps, and more. By the end of this course, you will be able to explain the difference between iteration and recursion, build a binary heap to query large datasets, implement and query a dataset using Binary Search trees and more!

You’ll synthesize your new skills and knowledge in an end-of-course guided project in which you will work to adapt a well-known structure to create a database. You will also learn what a key-value database is and how it is implemented. This project is a chance for you to use a B-Tree to implement a key-value datastore in Python, and it would also make a great portfolio piece that shows potential employers you’ve get real-world data engineering skills.

By the end of this course, you'll be able to:

## START LEARNING

By creating an account you agree to accept our terms of use and privacy policy.

## Learn About Recursion and Binary Trees

### Overview of Recursion

An overview of recursion for tree data structures.

### Introduction to Binary Trees

An introduction to the binary tree data structure.

### Implementing a Binary Heap

Implementing a binary heap to query large datasets.

### Working with Binary Search Trees

Implement and query a dataset using Binary Search Trees.

### Performance Boosts of Using a B-Tree

Building and using a B-Tree to implement an index on a CSV.

### Performance Boosts of Using a B-Tree II

Building and using a B-Tree to implement on a CSV.

### Guided Project: Implementing A Key-Value Database

Using a B-Tree to implement a key-value datastore in Python.