These codes should be tested, readable, well-commented and easy to modify. However, as it is changing repository, these requirements are not always met. Nonetheless, beggining of each code has short summary of algorithm source where it was taken, complexity and testing status. (updated 2021-01)
* DisjoinSetUnion.cpp
* PrefixSumArray.cpp
* Trie.cpp
* FenwickTree.cpp
* SegmentTreeWithLazyPropagation.cpp
* SegmentTree.cpp
* SparseTable.cpp
* HeldKarpAlgortihm.cpp
* LongestIncreasingSubsequence.cpp
* PrimAlgorithm.cpp
* DepthFirstSearch.cpp
* FloydTortoiseAndHare.cpp
* BellmanFord.cpp
* FloydWarshall.cpp
* BreadthFirstSearch.cpp
* FleuryAlgorithm.cpp
* HierholzerAlgorithm.cpp
* DijkstraAlgorithm.cpp
* KruskalAlgorithm.cpp
# Directed Graphs
* TopologicalSorting.cpp
* KosarajuAlgorithm.cpp
# Flows
* FordFulkerson.cpp
* EdmondsKarp.cpp
* MinCut.cpp
# Tree Algorithms
* TreeDiameter.cpp
* TreeTraversalArray.cpp
* EulerTourTechniqueLCA.cpp
* LCA.cpp
# Algebra
* GaussianElimination.cpp
* MatrixMultiplication.cpp
# Geometry
* ShoelaceFormula.cpp
# Number theory
* SieveOfEratostenes.cpp
* ExtendedEuclideanAlgorithm.cpp
* FastModularExponention.cpp
* ChineseRemaindertheorem.cpp
* EuclideanAlgorithm.cpp
* MergeSort.cpp
* QuickSelect.cpp
* CountingSort.cpp
* quicksort.cpp
* BinarySearch.cpp
* CoordinateCompression.cpp
* KnuthMorrisPratt.cpp
* PolynomialHashing.cpp