This document provides an overview of the Design & Analysis of Algorithms course. The course aims to develop proficiency in problem solving, programming, and analyzing algorithms for time and space complexity. Students will learn to select appropriate data structures and algorithms for problems, and compare algorithms' complexities. The course covers topics like asymptotic analysis, divide-and-conquer, dynamic programming, cryptography, geometric algorithms, and parallel/distributed algorithms. Evaluation includes midterm and final exams, assignments, and class participation. Regular attendance is expected and required to avoid debarment.