# Course details

Data Structures & Algorithms in Python: Implementing Data Structures

### Data Structures & Algorithms in Python: Implementing Data Structures

Overview/Description
Expected Duration
Lesson Objectives
Course Number
Expertise Level

Overview/Description

Examine operations that have different values of time complexity and delve into implementation of basic data structures, such as linked lists, stacks, and queues in Python, in this 13-video course. Key concepts covered here include operations that run in constant time regardless of input; code whose time complexity varies directly with value of input; and tasks whose time complexity varies linearly with size of input. Next, you will learn about operations whose time complexity varies as the square of input size; how to use native queue class of Python and perform standard queue operations; and how to code a queue class for many standard queue operations, such as enqueue and dequeue. Then, learn how a Python list can be used as a stack by loading and unloading elements, and how to implement a custom stack class for common stack operations. Finally, study code functions to perform search and delete operations in linked lists and reverse the ordering of its nodes; and create a linked list and test out various operations that have been defined.

Expected Duration (hours)
1.5

Lesson Objectives

Data Structures & Algorithms in Python: Implementing Data Structures

• discover the key concepts covered in this course
• identify operations that run in constant time regardless of input
• recognize code whose time complexity varies directly with the value of the input
• identify tasks whose time complexity varies linearly with the size of the input
• recognize operations whose time complexity varies as the square of the input size
• use the native Queue class of Python and perform the standard queue operations on it
• code a bespoke Queue class that includes definitions for many of the standard queue operations, such as enqueue and dequeue
• recognize how a Python list can be used as a stack by loading and unloading elements from the same end
• implement a custom Stack class that includes functions for the common stack operations
• define a Linked List class and implement functions to insert a node at the head or the tail of the linked list
• code functions to perform search and delete operations in a linked list and to reverse the ordering of its nodes
• instantiate a Linked List and test out the various operations that have been defined
• summarize common operations on stacks and their time complexities, and list the situations when adding to or removing elements from a stack or queue can throw exceptions
• Course Number:
it_pydsapdj_02_enus

Expertise Level
Beginner