“Without Dataquest, I wouldn’t have learned as quickly, and maybe I would have overlooked different options to tackle the database migration. It helped me tremendously in getting a good overview of what knowledge I needed and what kind of functions and libraries were useful for setting up the database migration.”

Solange van der Kolff

Software Engineer @Livit Orthopedie

Course overview

Algorithms are at the center of almost any programming job — particularly in the world of data engineering, where this is a recurring topic in job interviews. In this course, you’ll learn how to assess and model the time and space complexity of algorithms (i.e., how fast they’ll be, how much memory they’ll require), and you’ll learn how to trade memory for speed.

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 put together what you’ve learned in a guided project that tasks you with building indices for a CSV using dictionaries.

Key skills

  • Analyzing the time complexity of an algorithm
  • Analyzing the space complexity of an algorithm
  • Designing algorithms that are optimized to your use-case

Course outline

Introduction to Algorithms [6 lessons]

Time Complexity of Algorithms 2h

Lesson Objectives
  • Measure the execution time of an algorithm
  • Generate random inputs for an algorithm
  • Model the execution time of an algorithm

Constant Time Complexity 2h

Lesson Objectives
  • Identify constant time operations
  • Identify how computers manage memory
  • Refine computing time complexity models
  • Identify hidden function calls in Python.
  • Identify how lists and strings are stored in memory

Logarithmic Time Complexity 1h

Lesson Objectives
  • Explain logarithms and logarithmic complexity
  • Apply the binary search algorithm to find elements in sorted lists

Sorting Algorithms 1h

Lesson Objectives
  • Apply a sorting algorithm
  • Identify the time complexity of sorting in Python

Space Complexity 2h

Lesson Objectives
  • Evaluate the space complexity of an algorithm
  • Define the relation between time and space

Guided Project: Building Fast Queries on a CSV 2h

Lesson Objectives
  • Build indexes for a CSV using dictionaries

Projects in this course

Guided Project: Building Fast Queries on a CSV

Apply what you have learned to implement an inventory system for a laptop store with efficient queries.

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 on
G2Crowd and SwitchUp
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