This document is a comprehensive guide for the Data Structures & Algorithms course offered in Spring 2025. It covers key theoretical concepts, algorithmic strategies, and programming techniques, including recursion, sorting, dynamic programming, graph algorithms, and more. Designed for computer science undergraduates, the course material balances rigorous theory with practical problem-solving skills, preparing students for technical interviews and advanced coursework.