Course Description
This course introduces fundamental data structures and algorithmic techniques used in modern computing systems. The course balances conceptual understanding with practical implementation through coding exercises, system design scenarios, and performance analysis.
Students will explore how data structures influence efficiency, scalability, and maintainability in real-world systems such as databases, distributed platforms, and enterprise applications.
Emphasis is placed on practical implementation, algorithmic thinking, and applying data structures to solve real technical problems.
Learning Outcomes
By the end of the course, students will be able to:
- Explain how data structures affect performance and scalability
- Implement core structures such as lists, stacks, queues, trees, and graphs
- Analyze algorithm efficiency using Big-O notation
- Apply appropriate data structures to real IT problems
- Design and implement solutions using efficient algorithms
- Evaluate trade-offs between different data structures
Module 1: Introduction to Data Structures in Real Systems – Instructor Slides | Student PDF
Module 2: Arrays – Instructor Slides | Student PDF
Module 3: Linked Lists – Instructor Slides | Student PDF
Module 4: Stacks and Queues – Instructor Slides | Student PDF
Module 5: Trees and Hierarchical Data- Instructor Slides | Student PDF
Module 6: Graphs and Algorithmic Thinking – Instructor Slides | Student PDF