Skip to content

Latest commit

 

History

History
188 lines (188 loc) · 4.81 KB

File metadata and controls

188 lines (188 loc) · 4.81 KB
  • Complete Git & GitHub Course
  • Introduction to Programming
    • Types of languages
    • Memory management
  • Flow of the program
    • Flowcharts
    • Pseudocode
  • Introduction to Java
    • Introduction
    • How it works
    • Setup Installation
    • Input and Output in Java
    • Conditionals & Loops in Java
      • if else
      • loops
      • Switch statements
    • Data types
    • Coding best practices
  • Functions
    • Introduction
    • Scoping in Java
    • Shadowing
    • Variable Length Arguments
    • Overloading
  • Arrays
    • Introduction
    • Memory management
    • Input and Output
    • ArrayList Introduction
    • Sorting
      • Insertion Sort
      • Selection Sort
      • Bubble Sort
      • Cyclic Sort
      • (More ahead)
  • Searching
    • Linear Search
    • Binary Search
    • Modified Binary Search
    • 11th Binary Search on 2D Arrays
    • 11th Pattern questions
  • Strings
    • Introduction
    • How Strings work
    • Comparison of methods
    • Operations in Strings
    • StringBuilder in java
  • 12th Maths for DSA
    • Introduction
    • Complete Bitwise Operators
    • Prime numbers
    • HCF / LCM
    • Sieve of Eratosthenes
    • Newton's Square Root Method
    • Number Theory
    • Euclidean algorithm
    • Modulo Properties (of -ve also)
    • Advanced Concepts for CP (later in the course)
      • Bitwise + DP
      • Extended Euclidean algorithm
      • Modulo Multiplicative Inverse
      • Linear Diophantine Equations
      • Fermat’s Theorem
      • Wilson's Theorem
      • Lucas Theorem
      • Chinese Remainder Theorem
  • 12th, 13th Recursion
    • Introduction
    • Why recursion?
    • Flow of recursive programs stacks
    • Convert recursion to iteration
    • Tree building of function calls
    • Tail recursion
    • Sorting:
      • Merge Sort
      • Quick Sort
    • Backtracking
      • Sudoku Solver
      • N Queens
      • N Knights
      • Maze problems
    • Recursion String Problems
    • Recursion Array Problems
    • Recursion Pattern Problems
    • Subset Questions
  • 14th Space and Time Complexity Analysis
    • Introduction
    • Comparisons of various cases
    • Solving Linear Recurrence Relations
    • Solving Divide and Conquer Recurrence Relations
    • Big O, Big Omega, Big Theta Notations
    • Get equation of any relation easily best and easiest approach
    • Complexity discussion of all the problems we do
    • Space Complexity
    • Memory Allocation of various languages
    • NP Completeness and Hardness
  • 15th, 16th Object Oriented Programming
    • Introduction
    • Classes & its instances
    • this keyword in Java
    • Properties
      • Inheritance
      • Abstraction
      • Polymorphism
      • Encapsulation
    • Overloading & Overriding
    • Static & Non Static
    • Access Control
    • Interfaces
    • Abstract Classes
    • Singleton Class
    • final, finalize, finally
    • Object Class
    • Generics
    • Exception Handling
    • Collections Framework
    • Lambda Expression
    • Enums
    • Fast IO
    • File handling
  • 17th Greedy Algorithms
  • 18th Stacks & Queues
    • Introduction
    • Interview problems
    • Push efficient
    • Pop efficient
    • Queue using Stack and Vice versa
    • Circular Queue
  • 19th Linked List
    • Introduction
    • Fast and slow pointer
    • Cycle Detection
    • Single and Doubly LinkedList
    • Reversal of LinkedList
  • 20th, 21st, 22nd Dynamic Programming
    • Introduction
    • Recursion + Recursion DP + Iteration + Iteration Space Optimized
    • Complexity Analysis
    • 0/1 Knapsack
    • Subset Questions
    • Unbounded Knapsack
    • Subsequence questions
    • String DP
  • 23rd, 24th Trees
    • Introduction
    • Binary Trees
    • Binary Search Trees
    • DFS
    • BFS
    • AVL Trees
    • Segment Tree
    • Fenwick Tree / Binary Indexed Tree
  • 25th Square Root Decomposition
  • 26th Heaps
    • Introduction
    • Theory
    • Priority Queue
    • Heapsort
    • Two Heaps Method
    • k way merge
    • Top k elements
    • Interval problems
  • 27th HashMap
    • Introduction
    • Theory how it works
    • Comparisons of various forms
    • Limitations and how to solve
    • Map using LinkedList
    • Map using Hash
    • Count Sort
    • Radix Sort
    • Chaining
    • Probing
    • Huffman Encoder
  • 28th Subarray Questions: Sliding window, Two Pointer, Kadane's Algorithm
  • 28th Tries
  • 29th, 30th Graphs
    • Introduction
    • BFS
    • DFS
    • Working with graph components
    • Minimum Spanning Trees
    • Kruskal Algorithm
    • Prims Algorithm
    • Dijkstra’s shortest path algorithm
    • Topological Sort
    • Bellman ford
    • A* pathfinding Algorithm