Course Outline: Introduction to data structures and Algorithms and their
inter linkage; Efficient storage of ADTs (Abstract Data Types) and
memory intensive problems. Advantages and disadvantages of different
data structures using Arrays, Stacks, Queues, Priority Queues and Linked
Lists. Recursion, sorting and searching algorithms, Hashing, Binary tree
algorithim, Storage and retrieval performance of different techniques
using various data structures. Introduction to theory of NP-Completeness
and problem transformation. Lab outline: Implementing ADTs using arrays, dynamic memory,
Implementation of stacks, Queues & priority Queues, linked lists (single,
double, circular), tree searching algorithms, hash algorithms, performance
of different data structure techniques, bubble sort and insertion sort for
random and ordered data sets. Implementation and comparison of linear
search and binary search.