Data Structures through C++ Syllabus


Subject Code:53023 L:4 T/P/D:1 Credits:4 Int. Marks:25 Ext. Marks:75 Total Marks:100


UNIT I: 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: 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: 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: 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: 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: 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: VII


Search trees (prt II) : Trees definitions, B-Trees, B-Tree of order m, height of a B-Tree, insertion, deletion and searching, Comparison of Search Trees
Graphs: Basic terminology, representations of graphs, graph search methods DFS, BFS.


UNIT VIII: VIII


Text Processing : Pattern matching algorithms-Brute force, the Boyer Moore algorithm, the Knuth-Morris-Pratt algorithm, Standard Tries, Compressed Tries, Suffix tries.







TEXT BOOKS:
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.



REFERENCE BOOKS:
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.