DSA Course Outline
DSA Course Outline
Lecturer
Name Email Phone
Agblewornu Veronica [email protected] 0243039054
Course Objective:
Equip students with skills to analyze and design fundamental data structures, enabling them to
use these structures as tools to algorithmically create efficient computer programs that address
complex, real-world problems.
Learning Outcomes
Understand and differentiate between data types, data structures, and algorithms.
Define abstract data types (ADTs) and their implementation.
Design and implement basic data structures such as arrays, linked lists, stacks, queues,
trees, and graphs.
Use data structures to solve problems efficiently.
Analyze the time and space complexity of algorithms.
Apply appropriate searching and sorting algorithms in practical scenarios.
Course Content
Week 2: Arrays
Week 7: Trees
Week 9: Graphs
Topic: Introduction to Graphs
o Representation of graphs (adjacency matrix, adjacency list)
o Types of graphs: Directed, undirected, weighted, unweighted
o Graph traversal algorithms: BFS (Breadth-First Search), DFS (Depth-First
Search)
o Applications of graphs (shortest path, connectivity)
Week 12: Applications and Real-World Use Cases & Course Review and Project
Topics 1:
o Real-world applications of various data structures and algorithms
o Selection of appropriate data structures based on application requirements
Topics 2:
o Comprehensive review of all data structures covered
o Final Project: Design a program utilizing multiple data structures for a practical
problem
Recommended Resources:
Books:
o "Data Structures and Algorithm Analysis in C++" by Mark Allen Weiss.
o "C++ Primer" by Stanley B. Lippman.
o “Data_Structure_and_Algorithmic_Thinking_with_Python_Data_Structure.pdf”
by Narasimha Karumanchi.
o Karumanchi, N. (2016), Data Structures and Algorithms Made Easy: Data
Structures and Algorithmic Puzzles (5th ed.), CareerMonk Publications, ISBN-
10: 819324527X, ISBN-13: 978-8193245279
o Cormen, T. H., Leiserson C. E. and Rivest R. (2009), Introduction to Algorithms
(MIT Press) (3rd ed.), The MIT Press, ISBN-10: 0262033844, ISBN-13: 978-
0262033848
o Goodric, M. T. (2011), Data Structures and Algorithms in C++ (2nd ed.),
WileyISBN-10: 0470383275, ISBN-13: 978-0470383278
o Horowitz, E. et. al. (2007), Fundamentals of Data Structures in C (2nd ed.),
Silicon Prn ISBN-10: 0929306406, ISBN-13: 978-0929306407
Online Platforms:
o LeetCode (for solving data structure-related problems).
o GDB Online (https://www.onlinegdb.com/)
Assessment Methods: