Skip to content

Implementations of various algorithms and data structures

License

Notifications You must be signed in to change notification settings

rand0musername/algorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

algorithms

Own C++ implementations of various algorithms and data structures.

Primarily populated during my high school years to aid understanding of new techniques, and often used as a competitive programming toolbox, leading up to IOI 2015. Stopped actively maintaining the repo and adding content afterwards.

Overview of included algorithms:

├── Data Structures
│   ├── Binary Indexed Tree 2D
│   ├── Binary Indexed Tree
│   ├── Binary Search Trees
│   │   ├── AVL Tree
│   │   ├── B-Tree
│   │   ├── Left-Leaning Red-Black Tree
│   │   ├── Naive BST
│   │   ├── Splay Tree
│   │   └── Treap
│   ├── Disjoint Set (Union Find)
│   ├── Heaps
│   │   ├── Binary Heap
│   │   ├── Binomial Heap
│   │   ├── Fibonacci Heap
│   │   └── Pairing Heap
│   ├── Implicit Segment Tree
│   ├── MinStack + 2StackQueue
│   ├── Segment Tree
│   ├── Segment Tree with Lazy Propagation
│   ├── Sparse Table
│   ├── Suffix Array + LCP Array
│   └── Trie
├── Geometry
│   ├── Graham Scan
│   ├── Pick's Theorem + Polygon Area
│   └── Segment Intersection + Distances
├── Graphs
│   ├── Bellman-Ford
│   ├── BFS
│   ├── Cycle Detection
│   ├── DFS + Connected Components
│   ├── Dijkstra
│   ├── Edmonds-Karp
│   ├── Floyd-Warshall
│   ├── Ford-Fulkerson
│   ├── Heavy-Light Decomposition + LCA
│   ├── Hierholzer's Eulerian Path
│   ├── Kosaraju's SCC
│   ├── Kruskal's MST
│   ├── Prim's MST
│   ├── Tarjan's BCC + Articulation Vertices + Bridges
│   ├── Tarjan's SCC
│   └── Topological Sorting
├── Math
│   ├── Bignum Multiplication
│   ├── Euclidean Algorithm
│   ├── Exponentiation by Squaring + Modular Inverse
│   ├── Matrix Operations
│   ├── Pascal's Triangle
│   └── Sieve of Eratosthenes
├── Other
│   ├── Bit Manipulation
│   └── Huffman Coding
├── Searching
│   ├── Binary Search
│   ├── Quickselect
│   └── Ternary Search
├── Sorting
│   ├── Bubble Sort
│   ├── Counting Sort
│   ├── Heapsort
│   ├── Insertion Sort
│   ├── LSD Radix Sort
│   ├── Merge Sort
│   ├── MSD Radix Sort
│   ├── Quicksort
│   ├── Selection Sort
│   └── Shellsort
├── Strings
│   ├── Knuth-Morris-Pratt
│   └── Rabin-Karp

About

Implementations of various algorithms and data structures

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages