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
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
Learn exactly what you need to achieve your goal. Don’t waste time on unrelated lessons.
Build your project portfolio
Build confidence with our in-depth projects, and show off your data skills.
Challenge yourself with exercises
Work with real data from day one with interactive lessons and hands-on exercises.
Showcase your path certification
Share the evidence of your hard work with your network and potential employers.