└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Progress Tracker 2 | 3 | ## DSA 4 | - [x] Complete Git & GitHub Course 5 | - [x] Introduction to Programming 6 | - - [x] Types of languages 7 | - - [x] Memory management 8 | - [x] Flow of the program 9 | - - [x] Flowcharts 10 | - - [x] Pseudocode 11 | - [x] Introduction to Java 12 | - - [x] Introduction 13 | - - [x] How it works 14 | - - [x] Setup Installation 15 | - - [x] Input and Output in Java 16 | - - [x] Conditionals & Loops in Java 17 | - - [x] if else 18 | - - [x] loops 19 | - - [x] Switch statements 20 | - - [x] Data types 21 | - - [x] Coding best practices 22 | - [x] Functions 23 | - - [x] Introduction 24 | - - [x] Scoping in Java 25 | - - [x] Shadowing 26 | - - [x] Variable Length Arguments 27 | - - [x] Overloading 28 | - [x] Arrays 29 | - - [x] Introduction 30 | - - [x] Memory management 31 | - - [x] Input and Output 32 | - - [x] ArrayList Introduction 33 | - - [x] Sorting 34 | - - [x] Insertion Sort 35 | - - [x] Selection Sort 36 | - - [x] Bubble Sort 37 | - - [x] Cyclic Sort (Merge sort etc after recursion) 38 | - [x] Searching 39 | - - [x] Linear Search 40 | - - [x] Binary Search 41 | - - [x] Modified Binary Search 42 | - - [x] Binary Search Interview questions 43 | - - [x] Binary Search on 2D Arrays 44 | - [x] Pattern questions 45 | - [x] Strings 46 | - [x] Introduction 47 | - [x] How Strings work 48 | - [x] Comparison of methods 49 | - [x] Operations in Strings 50 | - [x] StringBuilder in java 51 | - [x] Maths for DSA 52 | - - [x] Introduction 53 | - - [x] Complete Bitwise Operators 54 | - - [x] Prime numbers 55 | - - [x] HCF / LCM 56 | - - [x] Sieve of Eratosthenes 57 | - - [x] Newton's Square Root Method 58 | - - [x] Number Theory 59 | - - [x] Euclidean algorithm 60 | - [x] Space and Time Complexity Analysis 61 | - - [x] Introduction 62 | - - [x] Comparion of various cases 63 | - - [x] Solving Linear Recurrence Relations 64 | - - [x] Solving Divide and Conquer Recurrence Relations 65 | - - [x] Big-O, Big-Omega, Big-Theta Notations 66 | - - [x] Get equation of any relation easily - best and easiest approach 67 | - - [x] Complexity discussion of all the problems we do 68 | - - [x] Space Complexity 69 | - - [x] Memory Allocation of various languages 70 | - - [x] NP Completeness and Hardness 71 | - [x] Recursion 72 | - - [x] Introduction 73 | - - [x] Why recursion? 74 | - - [x] Flow of recursive programs - stacks 75 | - - [x] Convert recursion to iteration 76 | - - [x] Tree building of function calls 77 | - - [x] Tail recursion 78 | - - [x] Sorting: 79 | - - [x] Merge Sort 80 | - - [x] Quick Sort 81 | - - [x] Backtracking 82 | - - [x] Sudoku Solver 83 | - - [x] N-Queens 84 | - - [x] N-Knights 85 | - - [x] Maze problems 86 | - - [x] Recursion String Problems 87 | - - [x] Recursion Array Problems 88 | - - [x] Recursion Pattern Problems 89 | - - [x] Subset Questions 90 | - - [x] Recursion - Permutations, Dice Throws etc Questions 91 | - [x] Object Oriented Programming 92 | - - [x] Introduction 93 | - - [x] Classes & its instances 94 | - - [x] this keyword in Java 95 | - - [x] Properties 96 | - - [x] Inheritance 97 | - - [x] Abstraction 98 | - - [x] Polymorphism 99 | - - [x] Encapsulation 100 | - - [x] Overloading & Overriding 101 | - - [x] Static & Non-Static 102 | - - [x] Access Control 103 | - - [x] Interfaces 104 | - - [x] Abstract Classes 105 | - - [x] Singleton Class 106 | - - [x] final, finalize, finally 107 | - - [x] Exception Handling 108 | - [x] Linked List 109 | - - [x] Introduction 110 | - - [x] Singly and Doubly Linked List 111 | - - [x] Circular Linked List 112 | - - [x] Fast and slow pointer 113 | - - [x] Cycle Detection 114 | - - [x] Reversing of LinekdList 115 | - - [x] Linked List Interview questions 116 | - [x] Stacks & Queues 117 | - - [x] Introduction 118 | - - [x] Interview problems 119 | - - [x] Push efficient 120 | - - [x] Pop efficient 121 | - - [x] Queue using Stack and Vice versa 122 | - - [x] Circular Queue 123 | - [ ] Dynamic Programming 124 | - - [x] Introduction 125 | - - [x] Recursion + Recursion DP + Iteration + Iteration Space Optimized 126 | - - [x] Complexity Analysis 127 | - - [x] 0/1 Knapsack 128 | - - [x] Subset Questions 129 | - - [x] DP on Grids 130 | - - [x] LC Questions on Above topics 131 | - - [ ] Unbounded Knapsack 132 | - - [x] Subseq questions 133 | - - [ ] String DP 134 | - [ ] Trees 135 | - - [x] Introduction 136 | - - [x] Binary Trees 137 | - - [x] Recursive Preorder, Inorder, Postorder Traversals 138 | - - [x] Iterative Preorder, Inorder, Postorder Traversals 139 | - - [x] LC Questions 140 | - - [x] DFS 141 | - - [x] BFS 142 | - - [x] Morris Traversal `O(1) Space` 143 | - - [x] Binary Search Trees 144 | - - [x] LC Questions 145 | - - [ ] AVL Trees 146 | - - [ ] Segment Tree 147 | - - [ ] Fenwick Tree / Binary Indexed Tree 148 | - [ ] Heaps 149 | - - [x] Introduction 150 | - - [x] Theory 151 | - - [x] Priority Queue 152 | - - [ ] Two Heaps Method 153 | - - [ ] k-way merge 154 | - - [ ] top k elements 155 | - - [ ] interval problems 156 | - [ ] Hashmaps 157 | - - [x] Introduction 158 | - - [x] Theory - how it works 159 | - - [x] Comparisons of various forms 160 | - - [x] Limitations and how to solve 161 | - - [x] Map using LinkedList 162 | - - [x] Map using Hash 163 | - - [x] Chaining 164 | - - [x] Probing 165 | - - [ ] Huffman-Encoder 166 | - [ ] Tries 167 | - - [x] Introduction 168 | - - [x] Theory - how it works 169 | - - [x] Applications 170 | - - [x] Insert and Search 171 | - - [ ] GFG articles and Questions 172 | - - [ ] Interview Questions 173 | - [ ] Graphs 174 | - - [x] Introduction 175 | - - [x] BFS 176 | - - [x] DFS 177 | - - [x] Working with graph components 178 | - - [x] Bipartite Graph 179 | - - [x] LC Questions 180 | - - [ ] Minimum Spanning Trees 181 | - - [ ] Kruskal Algorithm 182 | - - [ ] Prims Algorithm 183 | - - [x] Dijkstra’s shortest path algorithm 184 | - - [x] Topological Sort 185 | - - [x] Kahn's Algorithm 186 | - - [ ] Bellman ford 187 | - - [ ] A* pathfinding Algorithm 188 | - [ ] Greedy Algorithms 189 | - - [x] Introduction 190 | - - [x] Applications 191 | - - [x] LC,GFG Questions 192 | - - [ ] Interview Questions 193 | 194 | ### Advanced concepts apart from interviews 195 | - [ ] Fast IO 196 | - [x] File handling 197 | - [ ] Bitwise + DP 198 | - [ ] Extended Euclidean algorithm 199 | - [ ] Modulo Multiplicative Inverse 200 | - [ ] Linear Diophantine Equations 201 | - [ ] Matrix Exponentiation 202 | - [ ] Mathematical Expectation 203 | - [ ] Catalan Numbers 204 | - [ ] Fermat’s Theorem 205 | - [ ] Wilson's Theorem 206 | - [ ] Euler's Theorem 207 | - [x] Lucas Theorem 208 | - [x] Chinese Remainder Theorem 209 | - [ ] Euler Totient 210 | - [ ] NP-Completeness 211 | - [x] Multithreading 212 | - [ ] Fenwick Tree / Binary Indexed Tree 213 | - [ ] Square Root Decomposition 214 | --------------------------------------------------------------------------------