“The beauty of Dataquest is that it starts at the most basic level, so a true beginner can understand the concepts”

Aaron Melton

Business Analyst @Aditi Consulting

Course overview

In this course, you’ll learn about recursion, binary trees, binary heaps, and more. By the end, you’ll 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.

Best of all, you’ll learn by doing — you’ll practice and get feedback directly in the browser. At the end of the course, you’ll complete a guided project in which you’ll use a B-Tree to implement a key-value datastore in Python.

Key skills

  • Traversing tree data structures using recursion
  • Using different types of tree data structures
  • Explaining the various types of tree data structures

Course outline

Recursion and Trees for Data Engineering [8 lessons]

Overview of Recursion 2h

Lesson Objectives
  • Traverse tree data structures using recursion
  • Identify the different types of tree data structures
  • Implement different tree data structures

Introduction to Binary Trees 1h

Lesson Objectives
  • Define the binary tree structure
  • Identify common algorithms used on the binary tree

Working with Binary Search Trees 1h

Lesson Objectives
  • Run a binary search tree
  • Identify when to use a binary search tree over a heap
  • Identify the runtime of binary search tree algorithms

Implementing a Binary Heap 1h

Lesson Objectives
  • Build a binary heap structure
  • Determine which problems to solve using a binary heap
  • Identify the runtime of binary heap algorithms

Performance Boosts of Using a B-Tree 1h

Lesson Objectives
  • Run a B-Tree
  • Determine when to use a B-Tree over a binary search tree
  • Implement important B-Tree algorithms

Implement a B-Tree data structure 1h

Lesson Objectives
  • Speed up search queries using an index
  • Serialize Python objects to speed up algorithm loading
  • Measure B-Tree algorithm speeds

Implementing a CSV Index with a B-Tree 1h

Lesson Objectives
  • Extend a class
  • Build range queries for a B-tree
  • Serialize python objects

Guided Project: Implementing a Key-Value Database 1h

Lesson Objectives
  • Adapt a data structure to create a database
  • Implement a key-value database

Projects in this course

Guided Project: Implementing a Key-Value Database

For this project, we’ll step into the role of Python developers to build a key-value database using B-trees, enhancing it with features like range queries and dictionary-like syntax.

The Dataquest guarantee


Dataquest has helped thousands of people start new careers in data. If you put in the work and follow our path, you’ll master data skills and grow your career.


We believe so strongly in our paths that we offer a full satisfaction guarantee. If you complete a career path on Dataquest and aren’t satisfied with your outcome, we’ll give you a refund.

Master skills faster with Dataquest

Go from zero to job-ready

Go from zero to job-ready

Learn exactly what you need to achieve your goal. Don’t waste time on unrelated lessons.

Build your project portfolio

Build your project portfolio

Build confidence with our in-depth projects, and show off your data skills.

Challenge yourself with exercises

Challenge yourself with exercises

Work with real data from day one with interactive lessons and hands-on exercises.

Showcase your path certification

Showcase your path certification

Impress employers by completing a capstone project and certifying it with an expert review.

Grow your career with

of learners recommend
Dataquest for career advancement
Dataquest rating
SwitchUp Best Bootcamps
Average salary boost
for learners who complete a path

Aaron Melton

Business Analyst at Aditi Consulting

“Dataquest starts at the most basic level, so a beginner can understand the concepts. I tried learning to code before, using Codecademy and Coursera. I struggled because I had no background in coding, and I was spending a lot of time Googling. Dataquest helped me actually learn.”


Jessica Ko

Machine Learning Engineer at Twitter

“I liked the interactive environment on Dataquest. The material was clear and well organized. I spent more time practicing then watching videos and it made me want to keep learning.”


Victoria E. Guzik

Associate Data Scientist at Callisto Media

“I really love learning on Dataquest. I looked into a couple of other options and I found that they were much too handhold-y and fill in the blank relative to Dataquest’s method. The projects on Dataquest were key to getting my job. I doubled my income!”

Join 1M+ data learners on


Create a free account


Choose a learning path


Complete exercises and projects


Advance your career

Start learning today