Course Plan DSA - 2015-16
Course Plan DSA - 2015-16
2015-16
Name of Faculty; Dr. Mrs. Priti Rege,
Professor and Head (E & TC),
A note for students:
In any realistic program which handles data, the question of how that data is going to be
stored, and how it is to be manipulated to gain the desired outcome, is one of the main things
the programmer will need to think about. A program may be technically right in the sense that
it gives the right results, but so poorly designed in terms of the algorithms and data structures
that it takes hours to deliver a result which could have been returned in seconds had it been
better designed. Computer scientists over the years have thought long and hard about the main
sort of problems that are likely to be encountered in building programs, and designed suitable
algorithms and data structures which are efficient and which are proven to do the job correctly.
This course will start you off becoming aware of these issues.
Throughout the program students are encouraged to undertake independent reading both to supplement and
consolidate what is being taught and to broaden their individual knowledge and understanding of the subject
Teaching Scheme:
Lectures : 3 hrs/week
Examination Scheme:
100 marks: Assignments/Quiz -40, End-Sem
Exam- 60
Objectives:
Study the representation and use of primitive data types and built in data structures.
Study how the data structures are allocated and used in memory.
Study common applications of each of the data structures.
Implement the user defined data structures in a high level language
Prerequisites : C Programming
It is assumed that students have learnt C programming at FY. C programming will
not be covered in the lectures, only algorithms will be discussed. Implementation in
C has to be done during practical sessions.
Unit 1
(6hrs)
Linked Lists: Concept of linked organization, Singly linked list, doubly linked list, circular
linked list, Operations on linked list, Computation of length, traversal on linked list,
Representation & manipulations of polynomials using linked lists
Unit 2
06hrs)
Search: Importance of searching, Sequential, Binary Search, Sorting: Quick sort, merge
sort, heap sort, shell sort, Radix sort, need of external sorting, Hashing: Hashing functions,
chaining
Unit 3
(4hrs)
Unit 5
(7hrs)
Trees & Graphs: Basic terminology, binary trees and its representation, binary tree
traversals (recursive and non recursive), operations such as copy, equal on binary tree,
binary tree representation of trees, Terminology and Representation of graphs using
adjacency matrix, adjacency list, Traversals (Depth First and Breadth First Algorithm for
shortest path
Unit 6
(6 hrs)
Text Books:
Y. Langsam, M. Augenstin and A. Tannenbaum, Data Structures using C and C++,
Pearson Education Asia, 2nd Edition, 2002, ISBN-81-7808-729-4.
Chapra, S.C. & Canal, R. P.,Numerical Methods for Engineers, 4th Ed., Tata McGraw Hill
Pubication
Reference Books:
Ellis Horowitz, S. Sahni, D. Mehta Fundamentals of Data Structures in C++, Galgotia Book
Source, New Delhi 1995 ISBN 16782928
Balagurusamy, E., Numerical Methods, Tata McGraw-Hill Pub.Co.Ltd, New Delhi, 1999
Jain, Iyengar and Jain, Numerical Methods for Scientific and Engineering Computation,
New Age International, New Delhi, 2003.
Outcome :
Evaluation system
Note: For quizzes/tests date and time will be declared in the class during regular course and
ESE as per Institute academic calendar.
Key skills:
Ability to apply data structures and Numerical methods during real applications and
projects
Ability to l analyze and evaluate algorithms to develop ideas further for research
Students are encouraged to participate in discussions during lectures and also outside the
classroom.
Contact hours for discussion and difficulties:
Monday-Friday : Practical slots (Free batch) and Working Saturday 2.30 pm to 4.30 pm
Note: The subject needs strong programming skills. Students are advised to utilize free time in
developing programming skills. On working Saturdays of every month, special help will be
available for practice sessions.