Course 101
  • Introduction
  • installing the development environment + Hello world Program
  • Variables - Integers
  • Variables - Non Integers
  • Constants and Macros
  • Operators
  • Conditional Programming - IF statement
  • Loops
  • Arrays
  • Functions - Theory
  • Funcitons - Examples
  • Struct
  • Standard Input
  • Pointers
  • Application 1
  • Variable scopes
  • multidimensional Arrays
  • Debbugging with The IDE
  • Break - Continue
  • enumerators - User Defined Values
  • Pointers as function arguments
  • Strings - Definition & Operations
  • Strings - Functions
  • Compiling manually
Problem set | 101
  • Problem Set 1
  • Problem 1
  • Problem 2
  • Problem 3
  • Problem Set 2
  • Problem 1
  • Problem 2
  • Problem Set 3
  • Problem 1
  • Problem 2
  • Problem 3 - Method 1
  • Problem 3 - Method 2
Data Structures
  • Introduction
  • Stacks - Theory
  • Stack - Implementations
  • Stack - Premitives
  • Queues - Theory & Implementation
  • Queue - Primitives
  • Linked Lists - Singly | Theory & Implementation
  • Linked Lists - Singly | Front operations
  • Linked Lists - Singly | Back operations
  • Linked Lists - doubly | Push operations
  • Linked Lists - doubly | Pop Operations
  • Binary Trees - Theory & implementation
  • Binary Trees - Insertion
  • Binary Trees - Printing the tree
  • Graph - Theory
  • Graph - Representation
  • Graph - Implementation
  • Heap - Theory
  • Heap - Implementation - Insertion
  • Heap - Implementation- Extraction
Problem Set | Data structures
  • Problem Set 1
Algorithms
  • Introduction
  • Palindromic sequence
  • Recursion - Theory
  • Recursion - More examples
  • Introduction to complexity theory I
  • Introduction to complexity theory II
  • Counting the occurences - O(n^2) | O(max(n))
  • Printing the multiplication table - O(n^2)
  • Master theorem| recurense relation complexity
  • Bruteforce approach
Sorting Algorithms
  • Bubble sort - O(n^2) | Theory
  • Bubble sort - O(n^2) | Implementation
  • Bubble sort - O(n^2) | Complexity Analysis
  • Selection sort - O(n^2)
  • Sorting - Insertion sort - O(n^2)
  • Sorting - merge sort - O(n log n) - Theory
  • Sorting - merge sort - O(n log n) - Pseudo Code
  • Sorting - merge sort - O(n log n) - Implementation
Graph Algorithms
  • Introduction
  • Graph - Depth First Search - Theory
  • Graph - Depth First Search - Implementation
  • Graph - Breadth First Search - Theory
  • Graph - Breadth First Search - Implementation
  • Graph - Count number of paths between two nodes - Theory
  • Graph - Count number of paths between two nodes - Implementation
  • Dijkstra's Shortest Path - Theory
  • Dijkstra's Shortest Path - Heap Customization
  • Dijkstra's Shortest Path - Implementation
Problem Set | Algorithms
  • Problem set 1 - Recursion
  • Problem 1
  • Problem 2
  • Problem 3 - Theory
  • Problem 3 - Implementation
  • Problem 4
  • Problem 5