Unit – I
C++ Class Overview- Class Definition, Objects, Class Members, Access Control, Class Scope, Constructors and destructors, parameter passing methods, Inline functions, static class members, this pointer, friend functions, dynamic memory allocation and deallocation (new and delete), exception handling.
Unit – II
Function Over Loading, Operator Overloading, Generic Programming- Function and class templates, Inheritance basics, base and derived classes, inheritance types, base class access control, runtime polymorphism using virtual functions, abstract classes, streams I/O.
Unit – III
Algorithms, performance analysis- time complexity and space complexity. Review of basic data structures- The list ADT, Stack ADT, Queue ADT, Implementation using template classes in C++.
Unit – IV
Dictionaries, linear list representation, skip list representation, operations insertion, deletion and searching, hash table representation, hash functions, collision resolution-separate chaining, open addressing-linear probing, quadratic probing, double hashing, rehashing, extendible hashing, comparison of hashing and skip lists.
Unit – V
Priority Queues – Definition, ADT, Realizing a Priority Queue using Heaps, Definition, insertion, Deletion, External Sorting- Model for external sorting, Multiway merge, Polyphase merge.
Unit – VI
Search Trees (Part1):- Binary Search Trees, Definition, ADT, Implementation, Operations- Searching, Insertion and Deletion, AVL Trees, Definition, Height of an AVL Tree, Operations – Insertion, Deletion and Searching
Unit – VII
Search trees (part II) : Introduction to Red –Black and Splay Trees, B-Trees, B-Tree of order m, height of a B-Tree, insertion, deletion and searching, Comparison of Search Trees
Pattern matching and Tries : Pattern matching algorithms-Brute force, the Boyer –Moore algorithm, the Knuth-Morris-Pratt algorithm, Standard Tries, Compressed Tries, Suffix tries.
1. Data structures, Algorithms and Applications in C++, S.Sahni, University Press (India) Pvt.Ltd, 2nd edition, Universities Press Orient Longman Pvt. Ltd.
2. Data structures and Algorithms in C++, Michael T.Goodrich, R.Tamassia and .Mount, Wiley student edition, John Wiley and Sons.
1. Data structures and Algorithm Analysis in C++, Mark Allen Weiss, Pearson Education. Ltd., Second Edition.
2. Data structures and algorithms in C++, 3rd Edition, Adam Drozdek, Thomson
3. Data structures using C and C++, Langsam, Augenstein and Tanenbaum, PHI.
4. Problem solving with C++, The OOP, Fourth edition, W.Savitch, Pearson education.