Stacks and Queues: Selecting the Ideal Data Structure

There are a variety of ways for storing and managing data in your program and the choice of the right data structure has an effect on the readability of your code, ease of writing, and performance. Python has a wide selection of built-in mechanisms that meet most of your data structure needs. This course introduces you to three types of data structures: stacks, queues, and priority queues.

There are multiple types and classes for all of these data structures and this course discusses them and provides information on how to choose the right one.

In this course you’ll learn about:

  • How stacks are defined with Last-In/First-Out (LIFO) semantics
  • How to use the collections.deque object
  • How concurrency will affect your choice
  • What are priority queues
  • Which data structure methods are thread safe
  • How to decide between all of implementations of these data structures

The course is the third part of an ongoing series, exploring how to find the right Data Structure for your projects. The first course is Dictionaries and Arrays: Selecting the Ideal Data Structure and the second course is Records and Sets: Selecting the Ideal Data Structure.

Stacks and Queues: Selecting the Ideal Data Structure

1 Lesson 2m

Selecting the Ideal Stack

3 Lessons 10m

Selecting the Ideal Queue

3 Lessons 13m

Selecting the Ideal Priority Queue

3 Lessons 12m

About Christopher Trudeau

Christopher Trudeau Christopher Trudeau

Christopher has a passion for the Python language and writes for Real Python. He is a consultant who helps advise organizations on how to improve their technical teams.

» More about Christopher

Each tutorial at Real Python is created by a team of developers so that it meets our high quality standards. The team members who worked on this tutorial are:

« Browse All Courses