ADVANCED DATA STRUCTURES Ebook, presentation and lecture notes covering full semester syllabus
The topics covered in the attached e-books are:
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 (prt 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
Unit VIII : Pattern matching and Tries : Pattern matching algorithms-Brute force, the Boyer –Moore algorithm, the Knuth-Morris-Pratt algorithm, Standard Tries, Compressed Tries, Suffix tries.