Introduction – Arrays – Structures – Stack: Definition and examples, Representing Stacks - Queues and lists: Queue and its Representation, lists – Applications of Stack, Queue and Linked Lists.
Binary Trees – Operations on binary trees - Binary Tree Representations – node representation, internal and external nodes, implicit array representation – Binary tree Traversals - Huffman Algorithm – Representing Lists as Binary Trees
General Background – Exchange sorts – Selection and Tree Sorting – Insertion Sorts – Merge and Radix Sorts – Basic Search Techniques – Tree Searching – General Search Trees – Hashing
Fundamentals of the analysis of algorithm efficiency - Asymptotic notations - Greedy method – Prim’s algorithm – Kruskal’s algorithm – Dijkstra’s algorithm – Backtracking: N-Queens problem
P & NP problems – NP-complete problems – Approximation algorithms for NP-hard problems – Traveling salesman problem – Knapsack problem
Reference Book:
1. Robert Kruse & Clovis L. Tondo “Data Structures and Program Design in Câ€, Prentice Hall , 2nd edition., 2007. 2. M.K.Venkataraman “Engineering Mathematicsâ€, Volume II, National Publishing Company, Second Edition,1989. 3. A.Tamilarasi&A.M.Natarajan, “Discrete Mathematics and its Applicationâ€, Khanna Publishers, Second Edition, 2005.
Text Book:
1 Tanaenbaum A.S., Langram Y. Augestein M.J “Data Structures using Câ€, Pearson Education , 2008. 2. AnanyLevitin “Introduction to the Design and Analysis of Algorithms†Pearson Education 2012.