Module 1: C Programming Essentials - Searching & Sorting Techniques
Bubble Sort
Insertion Sort
Selection Sort
Linear search
Binary search
Module 2: Complex Data Types
Creating a Complex Data Type by Defining a Structure
Using 'typedef' and 'struct' keywords
Declaring structure Variables
Accessing members of a Structure
Operations on Structure
Structures and Pointers
Initialization of a Structure
Creating and using variables of a Complex Data Type
Module 3: Singly Linked Lists
Inserting an element
Removing an element
Using a Pointer to structure to create a single link between two elements
Module 4: Doubly Linked Lists
Inserting an element
Removing an element
Using two Pointers to structure to create a previous and next link between two elements
Module 5: Stack
Defining a Stack
Stack Operations
Stack Implementation using Array
Stack Implementation using Linked List
Module 6: Queues
Defining a Queue
Queue Operations
Queue Implementation using Array
Queue Implementation using Linked List
Discussion on Types of Queues (Double Ended, Priority & Circular)
Module 7: Trees
Definition & Types of Tree
Tree Properties
Representation of Trees
Tree ADT
Tree Implementation
Tree Traversal
Implementation of a Binary Tree
Module 8: Advanced Miscellaneous Topics
Command Line Arguments - argc and argv
Including Libraries
Creating user defined header files (.h files)
Including user defined header files and system libraries in your program without conflict.
Dynamic Memory Allocation
Allocating memory for variables at runtime
Use of functions like malloc(), calloc() & free()
Advanced Functions & Pointers
Pointer to a function
Functions with variable number of Arguments
Bitwise Operators