Introduction to Programming
- Types of languages
- Flowcharts & Pseudocode
- Flow of the program
- Time & Space Complexity
Refer these channels for following topics :-
Love Babbar - https://www.youtube.com/c/LoveBabbar1
Striver - https://www.youtube.com/c/takeUforward
Abdul Bari - https://www.youtube.com/channel/UCZCFT11CWBi3MHNlGf019nw
Basics of CPP
- Array
- Introduction
- Input and Output
- Sorting
- Insertion Sort
- Selection Sort
- Bubble Sort
- Count Sort
- Radix Sort
- Searching
- Linear Search
- Binary Search
- Modified Binary Search
- **Two Pointer
- **Subarray Questions
- **Divide and conquer algorithm
- Strings
- Introduction
- Comparison of methods
- Operations in Strings
- Maths for DSA
- Introduction
- Complete Bitwise Operators
- Prime numbers
- HCF / LCM
- Sieve of Eratosthenes
- Newton's Square Root Method
- Sorting:
- **Merge Sort
- Quick Sort
- Cyclic Sort
- Stacks & Queues
- Introduction
- Interview problems
- Push efficient
- Pop efficient
- Queue using Stack and Vice versa
- Circular Queue
- Linked List
- Introduction
- **Fast and slow pointer
- **Cycle Detection
- Single and Doubly LinkedList
- **Reversal of LinkedList
- Recursion
- Introduction
- Why recursion?
- Flow of recursive programs - stacks
- Convert recursion to iteration
- Tree building of function calls
- Tail recursion
- Backtracking
- Sudoku Solver
- N-Queens
- N-Knights
- Maze problems
- Recursion String Problems
- Recursion Array Problems
- Recursion Pattern Problems
- Subset Questions
- Dynamic Programming
- Introduction
- Recursion + Recursion DP + Iteration + Iteration Space Optimized
- Complexity Analysis
- **0/1 Knapsack
- Subset Questions
- Unbounded Knapsack
- Subsequence questions
- String DP
- Trees
- Introduction
- Binary Trees
- Binary Search Trees
- DFS
- BFS
- AVL Trees
- Segment Tree
- Fenwick Tree / Binary Indexed Tree
- Square Root Decomposition
- Heaps
- Introduction
- Theory
- Priority Queue
- Two Heaps Method
- k-way merge
- top k elements
- interval problems
- HashMap
- Introduction
- Theory - how it works
- Comparisons of various forms
- Limitations and how to solve
- Map using LinkedList
- Map using Hash
- Chaining
- Probing
- Huffman-Encoder
- Tries
- 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
### Later on Resources
- [Codeforces Candidate Master
RoadMap](https://whimsical.com/codeforces-candidate-master-roadmap-by-love-babbar-Ci
XPPD3CnwoXPr2d8Ajx1h)
- [DSA Cracker
Sheet](https://drive.google.com/file/d/1FMdN_OCfOI0iAeDlqswCiC2DZzD4nPsb/view)
- [Striver's CP
List](https://docs.google.com/document/d/1vShwt8yXYUOgkF53-iYAuJXWR7Yi5VSJrW2xB49
o0PM/edit)
-
[SDE-Problems](https://docs.google.com/document/d/1SM92efk8oDl8nyVw8NHPnbGexTS9
W-1gmTEYfEurLWQ/edit)
- [Competitive Programming Algorithms](https://cp-algorithms.com/)