Data Structure and Algorithm (Refresher Course)

Duration: 50 hrs
Objectives: This self-study module is for students who have already done the DSA course in their curriculum. For these students, the goals of this module are:

  • To strengthen DSA
  • To strengthen advanced concepts in C (through programming exercises)
  • Motivation: Many students are found lacking in their knowledge and understanding of DSA even after doing the course as part of the curriculum – this may be due to insufficient attention given in the semester due to multiple courses, some students requiring more time, etc. And DSA (and C) are among the key areas in which students are examined during their job interviews; besides forming the core of a lot of CS they do later. The objective of the module is to strengthen the students’ knowledge in this critical area. It is envisaged that students will do this module during summer vacation over 5 weeks (of course, as it is a self study, a student can take more or less duration; it can be done in winter vacation also with more effort per week), without the pressure of exams/grades, other courses, etc. There will be no instructor for the course and no grade or certificate will be provided – some TA and online help will be made available to students. The week-wise study plan for the module is given below. Teaching Assistants 2012
  • Ankit Sarkar (BTech)
  • Deepti Azad (MTech)
  • Piyush Yadav(MTech)
  • Rushil Khurana
  • Texts/Other Resources:
    The main text book for the course is:
    Data Structure and Algorithm Analysis in C (Second Edition), Mark Allen Weiss
    Other reference books are:
    Introduction to Algorithms, Cormen-Leiserson-Rivest-Stein, PHI
    On-line resources
    Google (e.g. you can easily clarify syntax, structure, how to use a construct, etc)
    On-line tutorials: NPTEL Naveen Garg, MIT
    Schedule:

    Date/Week
    Topics
    Homework Assignments
    Lectures
    1
    Asymptotic Notation, Linked List,
    Arrays, Stack, Queue
    Course Introduction
    File1.txt
    File2.txt

    NPTEL Lectures 1,2,3 of Naveen Garg
    2
    Hash table and dictionary
    File3.txt

    NPTEL Lectures 4,5 of Naveen Garg
    3
    Trees and binary Search Tree
    File4.txt

    NPTEL Lectures 6,8,9 of Naveen Garg
    4
    Priority Queue and Heaps
    File5.pdf

    NPTEL Lectures 20,21,22 of Naveen Garg
    5
    Graphs, BFS and DFS
    File6.txt

    NPTEL Lectures 24, 25, 26, 27

    December 28, 2011