Data Structures and Algorithms
The course explores foundational topics in algorithm design and data structures. It covers core structures like stacks, queues, linked lists, binary trees, and analytical tools such as the Master Theorem for solving recurrences. The course also takes a closer look at graph algorithms, including breadth-first and depth-first search, connectivity, shortest paths (Bellman–Ford, Dijkstra), Warshall’s all-pairs method, and the maximum flow problem. Emphasis is placed on algorithmic complexity, theoretical analysis, and practical implementation strategies. This ensures students gain both conceptual and functional expertise in designing and analyzing efficient algorithms.