Credit Hours: 3 (Theory) + 1 (Lab)
Pre-requisites: Computer Programming
To identify data structures and use them efficiently in algorithms for solving various problems.
ESSENTIAL TOPICS TO BE COVERED:
Fundamental data structures, data types, abstract data types, user defined data types, algorithms and their complexity, time-space trade off, arrays, records and pointers, matrices, linked lists, circular lists, two way lists, sequential (array) and linked implementation of stacks and queues, polish notation, recursion, towers of Hanoi, recursive implementation of stacks and queues, priority queues, tree, binary tree, binary search tree, traversals, threaded trees, heap, general trees, graphs, depth-first/breadth first traversal, adjacency matrix, shortest distance algorithms, sorting ,insertion sort, selection sort, merge sort, radix sort), hashing, searching: (linear search, binary search, depth first /breadth first search).