
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Welcome to Python Data Structures! This brief introduction tells what topics we'll cover and why they're important.
Learn to use common features of Sequence types (Strings, Lists and Tuples), including indexing, slicing, iterating, counting, summation, checking membership, sorting, etc.
Learn detailed features of Python's built-in data structures, Lists, Tuples, Sets and Dictionaries. This lesson uses a series of code examples in a Jupyter notebook that is easy to follow.
Learn to use Python's powerful List Comprehensions to create new lists.
Introduction to Stacks, and their key operations, push, pop and peek. This lecture also covers key use cases for stacks, and demonstrates how to implement a stack in Python.
Introduction to Queues, their key operations, primary use cases, and how to implement a queue in Python.
This lecture explains the Heap data structure, its key operations (push, peek and pop), how the heap works, and how to implement a MaxHeap in Python.
Learn what a Linked List is, what key operations it supports, and learn how to implement a Linked List in Python.
This lecture explains how Circular Link Lists work, how they differ from regular linked lists, and how to implement them in Python.
Learn about Doubly (bi-directional) Linked Lists, how they work, and how to implement in Python.
Learn what trees are, key terminology related to trees, how the key operations for binary search trees work, and the advantages of trees.
This lecture shows how to implement a binary search tree in Python.
This lecture explains what graphs are used for, the difference between directed and undirected graphs, and explains conceptually how graphs can be implemented using adjacency lists or an adjacency matrix.
This lecture explains how to implement a Graph data structure in Python using Adjacency Lists.
This lecture explains how to implement a Graph data structure in Python using an Adjacency Matrix.
This course combines conceptual lectures to explain how a data structure works, and code lectures that walk through how to implement a data structure in Python code. All the code lectures are based on Python 3 code in a Jupyter notebook. All the code and presentations are available for download on Github.
Data structures covered in this course include native Python data structures String, List, Tuple, Set, and Dictionary, as well as Stacks, Queues, Heaps, Linked Lists, Binary Search Trees, and Graphs.