Please login to Moodle for this course , for viewing announcements and submitting assignments.
This web page is being maintained for easy access to the lecture schedule, without requiring logging into Moodle.
The schedule of lectures can be found in the Lectures section.
Timings
Check CSE Dept Timetable to confirm the timings and location for exams.
Course Contents
The syllabus definition given for this course is available from the ASC website. It is copied here for information:
Introduction to data structures, abstract data types, analysis of
algorithms. Creation and manipulation of data structures: arrays, lists,
stacks, queues, trees, heaps, hash tables, balanced trees, tries,
graphs. Algorithms for sorting and searching, order statistics,
depth-first and breadth-first search, shortest paths and minimum
spanning tree.
The course will not go into excruciating details of C++ implementation issues of data structures and algorithms; It will not be too top-level either. The course will focus on concepts that are 'broadly useful', not only in CSE but also other disciplines. Mostly we will study "What are some useful data structures and algorithms?”.
We will do in-class group discussions to design data structures for simpler versions of real-life applications amd programming problems. We will focus on "Why are the data structures and algorithms designed in a given way?". We will study pros-and-cons of various solutions to a given problem (Why is a particular data structure or algorithm "better" than some other?). We will also discuss "How to implement these data structures and algorithms?" in a systematic manner.
Grading and Weightages
1 Endsem exam - 40%
1 Midsem exam - 30%
2 Quizzes - 20%
2 Assignments - 10%
