Data Structures

Ever wondered how search engines like Google can find what you need in milliseconds? The secret lies in efficient data structures. In this course, you will learn the fundamentals of data structures and why they are so crucial for optimizing performance. You’ll explore linked lists, stacks, queues, trees, and graphs, and learn where to use them. By the end, you'll implement these structures to make your programs faster and be well-prepared for coding interviews.

Student smiling while sitting outside, using a laptop.
Syllabus

Course Topics

Introduction to Data Structures

Get an overview of fundamental data structures including arrays, linked lists, stacks, queues, trees, and graphs. Understand their properties, use cases, and implementation.

Algorithmic Principles and Data Structures

Explore the basic algorithmic principles that underpin data structures. Learn how these principles influence the design and functionality of various data structures.

Operations on Data Structures

Examine the effects of various operations on data structures, such as insertion, deletion, and traversal. Understand how these operations impact the efficiency and performance of data structures.

Runtime Analysis

Calculate the runtime of accessing, inserting, deleting, and traversing elements in different data structures. Learn to evaluate the time and space complexity associated with these operations.

Abstract Data Structures

Explore abstract data structures, including lists, stacks, queues, trees, and graphs. Understand their theoretical foundations and practical implementations.

Comparative Analysis of Data Structures

Compare and contrast different data structures to determine their strengths and weaknesses. Learn how to choose the appropriate data structure for specific computational tasks.

Real-World Applications

Apply the knowledge of data structures to real-world problems. Work on projects and case studies that demonstrate the practical application of data structures in solving complex issues.

Course Level

200

Skills Covered

  • Python (Programming Language)
  • Data Structures
  • Algorithms
  • Problem Solving
  • Technical Documentation
  • Code Review

Common Prerequisites

All courses listed may not be required. Discuss with your advisor to learn more.

  • Programming for Everyone I
  • Programming for Everyone II

Disclosure

This course is delivered online through an institution of the Lower Cost Models Consortium (LCMC) that is different than your degree-granting institution that awards the academic credit for the course.