Ashoka University’s undergraduate course curriculum is taught across three semesters: Spring, Summer and Monsoon (Fall). Courses are broadly divided into three categories – Foundation Courses (core curriculum), Major & Minor Courses and Co-Curricular Courses.
You may search courses offered at Ashoka here. Please use the drop down menu to choose the specific semester and subject to see the full list of courses under each department. Foundation courses are offered in all semesters and do not have prerequisites. Offerings in other categories differ in each semester. Some higher level major/minor courses may have prerequisites.
To view Summer Semester Courses-2024: Click here
Course objective: This course will introduce students to the mathematical modeling and solution of computational problems, and teach them how to design and analyze efficient algorithms.
Students will:
1. Cover the standard algorithmic paradigms like induction, divide-and-conquer, prune-and-search, greedy, dynamic programming and a toolkit of common algorithms including randomized techniques for design, correctness proofs and rigorous analysis of time and space complexity.
2. Explore different ways of thinking about and representing problems coming from diverse domains like sets, graphs, geometry, algebra and number-theory.
3. Develop an understanding of performance metrics like worst-case, average-case and expected case and how the underlying computational framework is intrinsically tied to the design of efficient algorithms and the notion of optimality.