Basic Data Structures: Arrays, Linked Lists, Stack, Queue, Dequeue, Tree, Heap, Hash Table and Collision resolution.
Basic algorithms for Creation, Manipulation of Data Structures Internal Sorting Algorithms: Bubble, Heap, Quick Sort. Tape sorting and Merging
Simple Algorithms, Analyzing Algorithms, Asymptotic Notation. Advanced algorithim.
General Consideration, Algorithm Design Paradigms and Representative Problems: Divide and Conquer (Binary search, Merge Sort), Greedy Method (Minimal Spanning Tree), Dynamic Programming (Chained Matrix Multiplication), Longest common subsequence, Backtracking (8-queens problem), Branch and Bound (0/1 Knapsack Problem) String Matching Problem, Brute Force Method, KMP Algorithm, Boyer-Moore Algorithm, Approximate String matching.
Basic Concepts, Nondeterministic Algorithms, NP Completeness (Brief introduction only- no proof) , optimization algorithim.
1. S. Lipschutz. “Data Structures”, Schaum’s outline series, Tata McGraw Hill Edition, 2002 2. E. Horowitz and S. Sahani. “Fundamentals of Data Structures”, Galgotia Book source Pvt. Ltd, 2000 3. Robert L.Kruse. “Data Structures and Program Design”, Third Edition, PHI 4. Jones, Neil.C. & Pevzner, Pavel A. “An introduction to bioinformatics algorithms”.New Delhi, Anne Books, 2005.
1. Y. Langsam, M. J. Augenstein, A.M. Tenenbaum. “Data Structure using C, C++”, 2nd Edition, Prentice Hall of India, 1999. 2. Heileman, G.L. “Data structures, algorithms, and object oriented programming”. Tata McGraw-Hill Publishing Company Limited, New Delhi, 2002.