Under Class: | 2nd Semester [ECE Dept Anna University 2025 Regulation] |
Data Structures using C++ - CS25C05 - Study Materials, Notes, Important Questions, Anna University Semester Question Paper PDF Download
Engineering - Data Structures using C++ - CS25C05 Subject (under Anna University 2nd Semester - ECE - Electronics and Communication Engineering Engineering Regulation 2025) - Study Materials, Written and lecture Notes, Important Questions, Semester Question Paper PDF Download

CS25C05:
Data Structures using C++
Course
Objective:
•
This course aims to provide an understanding of object-oriented programming
principles using C++.
Data
Abstraction & Overloading: Overview of C++,
Structures, Class Scope and Accessing Class Members, Reference Variables,
Initialization, Constructors, Destructors, Member Functions and Classes, Friend
Function, Dynamic Memory Allocation, Static Class Members, Container Classes
and Integrators, Proxy Classes, Overloading: Function overloading and Operator
Overloading.
Practical:
1.
Program to Implement Constructors and Destructors.
2.
Program to implement Member Functions, Classes and Friend Functions.
3.
Program to Implement Dynamic Memory Allocation and Overloading.
Inheritance
& Polymorphism: Base Classes and Derived Classes,
Protected Members, Casting Class pointers and Member Functions, Overriding,
Public, Protected and Private Inheritance–Constructors and Destructors in
derived Classes, Implicit Derived, Class Object to Base, Class Object
Conversion, Composition Vs. Inheritance, Virtual functions, This Pointer,
Abstract Base Classes and Concrete Classes, Virtual Destructors, Dynamic
Binding.
Practical:
1.
Program to Implement various inheritances.
2.
Program to Implement virtual functions and dynamic binding.
3.
Implementation of method overriding and operator overloading.
Linear
Data Structures: Asymptotic Notations: Big-Oh, Omega and
Theta, Best, Worst and Average case Analysis: Definition and an example, Arrays
and its representations, Stacks and Queues, Linked lists, Linked list based
implementation of Stacks and Queues, Evaluation of Expressions, Linked list
based polynomial addition.
Practical:
1.
Program to implement various operations on arrays and linked lists.
2.
Program to implement various operations on stacks and queues using array and
linked list.
3.
Program to evaluate the infix expressions by converting into prefix and postfix
expressions
Linear
Data Structures: Asymptotic Notations: Big-Oh, Omega and
Theta, Best, Worst and Average case Analysis: Definition and an example –
Arrays and its representations, Stacks and Queues, linked lists, linked list
based implementation of Stacks and Queues, Evaluation of Expressions, linked
list based polynomial addition.
Practical:
1.
Program to Implement Various Operations on Arrays and Linked Lists.
2.
Program to Implement Various Operations on Stacks and Queues using Array and
Linked List.
3.
Program to Evaluate the Infix Expressions by converting into Prefix and Postfix
Expressions.
Non-Linear
Data Structures: Trees, Binary Trees, Binary tree
representation and traversals, Threaded binary trees, Binary tree
representation of trees, Application of trees: Set representation and Union,
Find operations, Graph and its representations, Graph Traversals, Connected
components. Standard template library.
Practical:
1.
Program to Implement Binary Tree Traversal and Graph Traversal Algorithm.
2.
Program to Implement the Single Source Shortest Path Algorithm and All Pair
Shortest Path Algorithm.
3.Program
to find the Minimal Spanning Tree for a Graph.
Searching,
Sorting and Complexity Analysis: Insertion sort, Merge
sort, Quicksort, Heapsort, Linear Search, Binary Search.
Practical:
1.
Program to Implement Linear Search and Binary Search Algorithms.
2.
Program to Implement Insertion Sort, Merge Sort, Quick Sort and Heap Sort
Algorithms.
Weightage: Continuous Assessment: 50%, End Semester Examinations: 50%
Assessment Methodology:
Quiz (5%), Assignments (20%), Flipped Class (5%), Practical (30%), Internal
Examinations (40%)
References
1.
Deitel, P. J., & Deitel, H. M. (2005). C++ how to program. Pearson
Education.
2.
Ellis Horowitz, E., Sahni, S., & Mehta, D. (2007). Fundamentals of data
structures in C++. Universities Press Pvt Ltd.
3.
Weiss, M. A. (2007). Data structures and algorithm analysis in C++. Addison-
Wesley.
4.
Trivedi, B. (2010). Programming with ANSI C++: A step-by-step approach. Oxford
University Press.
5.
Goodrich, M. T., Tamassia, R., & Mount, D. (2004). Data structures and
algorithms
in C++. Wiley.
E-Resources:
1.
https://nptel.ac.in/courses/106/106/106106143/
2.
https://www.tutorialspoint.com/data_structures_algorithms/index.htm