Module -1 10 Hours
Overview of C Input and output statements – scanf, getchar, gets, printf, putchar, puts; Control Statements – if, else-if, switch, Control Structures – while, for, do-while, break and continue, goto.Functions: Categories of functions, Call by Value, Call by reference. Arrays: Definition, Representation, Single dimension, Two dimensional, Multidimensional Arrays, Passing arrays to functions, passing strings to functions
Module -2 10 Hours
Pointers, Pointer Expression, Pointer as function arguments, Functions returning pointers, Pointers to functions, Structures: Declaring and using structure types. Classification of Data Structures:Primitive and Non- Primitive, Linear and Nonlinear; Data structure Operations, ADT, Array as ADT, Operations - Insert, Delete, Search, Sort, String Definition, Representation, String as ADT, Operations – Insert, Delete, Concatenate, Comparing, Substring.
Module -3 10 Hours
Stack: Definition, Representation, Stack as ADT, Operations and Applications: Polish and reverse polish expressions, Infix to postfix conversion, evaluation of postfix expression, infix to prefix, postfix to infix conversion; Recursion - Factorial, GCD, Fibonacci Sequence, Tower of Hanoi Queue: Definition, Representation, Queue as ADT, Operations, Queue Variants: Circular Queue, Priority Queue, Double Ended Queue; Applications of Queues. Programming Examples.
Module -4 10 Hours
Linked List:Limitations of array implementation, Memory Management: Static (Stack) and Dynamic (Heap) Memory Allocation, Memory management functions. Definition, Representation, Operations: getnode() and Freenode() operations, Types: Singly Linked List. Linked list as a data Structure, Inserting and removing nodes from a list, Linked implementations of stacks, Example of list operations such as insert and delete an element before a key element, Header nodes, Array implementation of lists.: Circular Linked List: Inserting, deleting and searching elements in a lists, Double Linked List: Inserting and Deleting Nodes, Queue as doubly linked lists, such as insert into position, Delete an specified element. Application of Linked Lists: Stacks, Queues, Double-ended Queues, Priority Queues, Sparse Matrix and Polynomials using Lists, Trees, BST.
Module -5 10 Hours
Trees: Definitions, Terminologies, Array and linked Representation of Binary Trees, Types- Complete/full, Almost Complete, Strictly, Skewed; Traversal methods - Inorder, postorder, preorder; Binary Search Trees - Creation, Insertion, Deletion, Traversal, Searching. Sorting & Searching: Bubble sort, Insertion Sort, Selection sort, Quick sort, Linear Search, Binary Search and BST. Hashing: The Hash Table organizations, Hashing Functions, Static and Dynamic Hashing, Collision-Resolution Techniques, Programming Examples.