Competitive-Programming-Repository
                                
                                
                                
                                    Competitive-Programming-Repository copied to clipboard
                            
                            
                            
                        Competitive Programming templates that I used during the past few years.
Competitive-Programming-Repository
Collection of algorithms and data structures in C++ used widely in Competitive programming contests.
The following topics are covered:
Range Updates and Queries
- Range Aggregate Queries :
- Binary Indexed Trees (BIT) :
 - Segment Trees (SegTree) :
 - Merge Sort Trees :
 - Sparse Table :
 - Mo Algorithm :
 
 - Dynamic Programming :
- Dynamic Programming Templates :
 - Standard DP Problems :
 
 - Graphs :
- Single Source Shortest Path Algorithms :
 - All Pair shortest path :
 - Cycle Detection :
 - Minimum Spanning tree :
 - Topological Sort / Strongly Connected Component :
 - Maxflow/Matching :
 - Misc :
 
 - Trees :
- Ancestor queries :
 - Path queries :
 - Misc :
 
 - Binary Exponentiation :
 - Strings :
- String Algorithms :
 - String Data Structures :
 
 - Sorting :
 - Fast Input/Output, String/Integer Conversion :
 - Misc. Data Structures :
 - Persistent Data Structures :
- Persistent Segment Trees (SegTree) :
 
 - Number Theory Algorithms :
- Primality Check :
 - Sieve :
 - Polynomial Multiplication :
 - Misc :
 
 - Computational Geometry :
 - Misc :