Title of The Course: Data Structure and Algorithms Credits: 1 0 2
Title of The Course: Data Structure and Algorithms Credits: 1 0 2
Title of The Course: Data Structure and Algorithms Credits: 1 0 2
Credits : 1 0 2
Objective: This is an introductory level course in Data structures and algorithms offered to all
engineering disciplines. Main objective of the course is on various useful data structures and
algorithms, how to implement them and why a particular data structure or algorithm is better
than other. Emphasis will be on problem solving using various data structures and algorithms.
Course Contents:
Introduction to data structures, abstract data types, Creation and manipulation of data structures:
arrays, lists, stacks, queues, trees, heaps, hash tables, balanced trees. Algorithms for sorting and
searching. Notion of time and space complexity, the O- notation
Lab Exercises:
Lab to be conducted on a 3-hour slot. It will be conducted in tandem with the theory course so
the topics for problems given in the lab are already initiated in the theory class. The topics taught
in the theory course should be appropriately be sequenced for synchronization with the
laboratory. A sample sequence of topics and lab classes for the topic are given below
Unit 1: Two assignments: Designing algorithm for some problems and writing program for it
Unit 2: Four-Five assignments (some examples: Building a queue of strings, practice with linked
data structures, Using a stack to evaluate arithmetic expressions etc),
Unit 3: Two-Three assignments: sorting with recursion etc
Unit 4: Four-Five assignments: Comparing time and space complexity, e.g, comparing sorting by
minimum search and sorting by mergesort, Analysing NP hard and NP complete problems and
dealing with them
References
Introduction to Algorithms-Thomas H.Cormen, Leiserson, Rivest, Stein (Text Book)
Data Structures and Algorithms, By: Alfred V. Aho, Jeffrey D. Ullman, John E. Hopcroft