Data Structures

In the previous module, you learned an algorithm known Binary Search and improve your knowledge of data structures and algorithms.

In this module, you'll learn about different structures in Python. When you began learning Python for Data Science, you encountered two data structures: lists and dictionaries. While these are good for organizing data, there are many others and which one you choose depends on a few factors.

As this module progresses, we'll show you different types of data structures and what you need to consider when choosing the right one for your program.

Learning about data structures can be tough without any hands-on practice. That's why as you work through each concept, you’ll get to apply what you’ve learned from within your browser — there's no need to use your own machine to do the exercises. The Python environment inside of this course includes answer checking so you can ensure that you've fully mastered each concept before learning the next.


  • Learn what data structures are.
  • Implement and analyze the performance of an array.
  • Implement and analyze the performanch of a hash table.

Mission Outline

1. What is a Data Structure?
2. An Overview of Arrays
3. Exercise: Dynamic Arrays
4. Exercise: Practice Inserting Into an Array
5. Two-Dimensional Arrays
6. 2D Array Implementation
7. 2D Array Time Complexity
8. An Overview of Hash Tables/Dictionaries
9. Dictionary Access
10. Hash Table Implementation
11. Hash Table Analysis
12. Exercise: Choosing a Data Structure
13. Takeaways


Course Info:


The median completion time for this course is 6.16 hours. ​View Details​​​

This course requires a premium subscription. This course includes five missions, and one guided project. It is the 26th course in the Data Scientist in Python path.


Take a Look Inside

(function(d) { d.addEventListener("DOMContentLoaded", function() { var pathname = d.location.pathname.replace(/^[/]|[/]$/g, "").replace("/", "-"); var tags = d.getElementsByTagName("iframe"); var type = pathname.startsWith("course") ? "?course=" : pathname.startsWith("path") ? "?path=" : null; if (type) { var i; for (i = 0; i < tags.length; i++) { if (tags[i].src.indexOf("signup#iframe") !== -1) { tags[i].src = tags[i].src.replace("#iframe", "") + type + pathname + "#iframe"; } } } }, false); })(document);