JNTUK R16 3-2 DATA STRUCTURES THROUGH C++ Material PDF Download
Students those who are studying JNTUK R16 EEE Branch, Can Download Unit wise R16 3-2 DATA STRUCTURES THROUGH C++ Material/Notes PDFs below.
JNTUK R16 3-2 DATA STRUCTURES THROUGH C++ Material PDF Download
OBJECTIVES:
- To be familiar with basic techniques of object oriented principles and exception handling using C++
- To be familiar with the concepts like Inheritance, Polymorphism
- Solve problems using data structures such as linear lists, stacks, queues, hash tables
- Be familiar with advanced data structures such as balanced search trees, AVLTrees, and B Trees.
UNIT-1
ARRAYS
Abstract Data Types and the C++ Class, An Introduction to C++ Class- Data Abstraction and Encapsulation in C++- Declaring Class Objects and Invoking Member Functions- Special Class Operations- Miscellaneous Topics- ADTs and C++Classes, The Array as an Abstract Data Type, The Polynomial Abstract Data type- Polynomial Representation- Polynomial Addition. Spares Matrices,Introduction- Sparse Matrix Representation- Transposing a Matrix- Matrix Multiplication, Representation of Arrays.
UNIT-2
STACKS AND QUEUES
Templates in C++, Template Functions- Using Templates to Represent Container Classes, The Stack Abstract Data Type, The Queue Abstract Data Type, Subtyping and Inheritance in C++, Evaluation of Expressions, Expression- Postfix Notation- Infix to Postfix.
UNIT-3
LINKED LISTS
Single Linked List and Chains, Representing Chains in C++, Defining a Node in C++- Designing a Chain Class in C++- Pointer manipulation in C++- Chain Manipulation Operations, The Template Class Chain, Implementing Chains with Templates- Chain Iterators- Chain Operations- Reusing a Class, Circular Lists, Available Space Lists, Linked Stacks and Queues, Polynomials, Polynomial Representation- Adding Polynomials- Circular List Representation of Polynomials, Equivalence Classes, Sparse Matrices, Sparse Matrix Representation- Sparse Matrix Input- Deleting a Sparse Matrix, Doubly Linked Lists, Generalized Lists, Representation of Generalized Lists- Recursive Algorithms for ListsReference Counts, Shared and Recursive Lists
UNIT-4
TREES
Introduction, Terminology, Representation of Trees, Binary Trees, The Abstract Data Type, Properties of Binary Tress, Binary Tree Representations, Binary Tree Traversal and Tree Iterators, Introduction, Inorder Traversal Preorder Traversal, Postorder Traversal, Thread Binary Trees, Threads, Inorder Traversal of a Threaded Binary Tree, Inserting a Node into a Threaded Binary Tree, Heaps, Priority Queues, Definition of a Max Heap, Insertion into a Max Heap, Deletion from a Max Heap, Binary Search Trees, Definition, Searching a Binary Search Tree, Insertion into a Binary Search Tree, Deletion from a Binary Search Tree, Height of Binary Search Tree.
UNIT-5
GRAPHS
The Graph Abstract Data Type, Introduction, Definition, Graph Representation, Elementary Graph Operation, Depth First Search, Breadth First Search, Connected Components, Spanning Trees, Biconnected Components, Minimum Cost Spanning Trees, Kruskal S Algorithm, Prim s Algorithm Sollin’ s Algorithm, Shortest Paths and Transitive Closure, Single Source/All Destination: Nonnegative Edge Cost, Single Source/All Destination: General Weights, All-Pairs Shortest Path, Transitive Closure.
UNIT-6
SORTING
Insertion Sort, Quick Sort, Merge Sort Merging, Iterative Merge Sort, Recursive Merge Sort, Heap Sort.
TEXT BOOKS:
- Data structures, Algorithms and Applications in C++, S.Sahni, University Press (India) Pvt.Ltd, 2nd edition, Universities Press, Pvt. Ltd.
- Data structures and Algorithm Analysis in C++, Mark Allen Weiss, Pearson Education. Ltd.Second, Edition.
- 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 algorithms in C++, 3rd Edition, Adam Drozdek, Thomson
- Data structures using C and C++, Langsam, Augenstein and Tanenbaum, PHI.
- Problem solving with C++, The OOP, Fourth edition, W.Savitch, Pearson education.
OUTCOMES:
- Distinguish between procedures and object oriented programming.
- Apply advanced data structure strategies for exploring complex data structures.
- Compare and contrast various data structures and design techniques in the area of Performance.
- Implement data structure algorithms through C++.
- Incorporate data structures into the applications such as binary search trees, AVL and B Trees
- Implement all data structures like stacks, queues, trees, lists and graphs and compare their Performance and trade offs