Evolution of OOP, OOP Paradigm, advantages of OOP, Comparison between functional
programming and OOP Approach, characteristics of object oriented language – objects,
classes, inheritance, reusability, user defined data types, polymorphism, overloading.
Introduction to C++, Identifier and keywords, constants, C++ operators, type conversion,
Variable declaration, statements, expressions, input and output, conditional expression loop
statements, breaking control statements.
Defining function, types of functions, storage class specifiers, recursion, pre-processor, header
files and standard functions, Arrays, pointer arithmetic’s, structures, pointers and structures,
unions, bit fields typed, enumerations.
Classes, member functions, objects, arrays of class objects, pointers and classes, nested classes,
constructors, destructors, inline member functions, static class member, friend functions,
dynamic memory allocation.
Inheritance, single inheritance, types of base classes, types of derivations, multiple inheritance,
container classes, member access control
Function overloading, operator overloading, polymorphism, early binding, polymorphism with
pointers, virtual functions, late binding, pure virtual functions, opening and closing of files,
stream state member functions, binary file operations, structures and file operations, classes
and file operations, random access file processing.
DATA STRUCTURE: Basic data structures such as arrays, stack and queues and their
applications, linked and sequential representation. Linked list, representation of linked list,
multi linked structures.
Trees: definitions and basic concepts, linked tree representation, representations in contiguous
storage, binary trees, binary tree traversal, searching insertion and deletion in binary trees, heap
tree and heap sort algorithm, AVL trees.
Graphs and their application, sequential and linked representation of graph – adjacency matrix,
operations on graph, traversing a graph, Dijkstra’s algorithm for shortest distance, DFS and
BFS, Hashing.
Searching and sorting, use of various data structures for searching and sorting, Linear and
Binary search, Insertion sort, Selection sort, Merge sort, Radix sort, Bubble sort, Quick sort,
Heap Sort.