Data Structures, Algorithms and Programming Construction with Python

Abstract data types, dynamic data structures, searching and sorting algorithms, and time complexity analysis.

Instructor: Teaching Assistant

Term: Spring

Location: Mälardalen University

Course Overview

This course gives in-depth ability in computer science problem solving by working with abstract data types.

Learning Outcomes

After completing the course, students will be able to:

  • Use abstract data types in programming assignments
  • Define and implement abstract data types based on informal problem descriptions
  • Implement algorithms based on pseudocode descriptions
  • Be familiar with common sorting and searching algorithms and implement unknown variants
  • Understand time complexity and calculate it for simple code
  • Be familiar with specific abstract data types such as binary trees, dynamic lists, direct access lists, various search data structures, and graphs

Course Content

  • Abstract data types
  • Dynamic data structures
  • Searching and sorting algorithms
  • Time complexity for algorithms

Examination

  • Laboratory work (LAB1): 4.5 hp, graded Pass/Fail
  • Written exam (TEN1): 3 hp, graded 3, 4, or 5