The Algorithms
Search any algorithm
About
Donate
Rust
GitHub repository
Backtracking
Backtracking
N Queens
More
Backtracking
All Combination of Size K
More
Backtracking
Sudoku Solver
+1
More
Big Integer
Big Integer
Hello Bigmath
More
Big Integer
Poly 1305
More
Blockchain
Blockchain
Chinese Remainder Theorem
More
Ciphers
Ciphers
Base 64
More
Ciphers
Rot 13
More
Ciphers
Polybius
More
Ciphers
Tea
More
Ciphers
Kerninghan
More
Ciphers
Hashing Traits
More
Ciphers
Salsa
More
Ciphers
XOR Cipher
+2
More
Ciphers
Morse Code
More
Ciphers
Caesar
More
Ciphers
Another Rot 13
More
Ciphers
Transposition
More
Ciphers
Theoretical Rot 13
More
Ciphers
Diffie Hellman
More
Ciphers
Chacha
More
Ciphers
AES
More
Ciphers
Vigenere
More
Compression
Compression
Run Length Encoding
More
Compression
Run Length Encoding
More
Data Structures
Data Structures
B Tree
More
Data Structures
/
Stacks
Stack with Singly Linked List
+2
More
Data Structures
/
Binary Tree
Fenwick Tree
More
Data Structures
Heap
More
Data Structures
/
Binary Tree
AVL Tree
+1
More
Data Structures
Rb Tree
More
Data Structures
/
Binary Tree
Binary Search Tree
+1
More
Data Structures
Trie
More
Data Structures
Linked List
More
Data Structures
/
Binary Tree
Treap
More
Data Structures
Queue
+1
More
Data Structures
/
Binary Tree
Segment Tree
+2
More
Data Structures
Graph
More
Data Structures
/
Binary Tree
Lowest Common Ancestor
More
Data Structures
/
Array
Reverse
More
Data Structures
/
Hashing
/
Number Theory
Prime
+7
More
Data Structures
/
Hashing
/
Number Theory
Prime
+7
More
Divide and Conquer
Divide and Conquer
Convex Hull
More
Dynamic Programming
Dynamic Programming
Knapsack
+2
More
Dynamic Programming
Coin Change
+4
More
Dynamic Programming
Maximal Square
More
Dynamic Programming
Longest Continuous Increasing Subsequence
More
Dynamic Programming
Longest Common Substring
More
Dynamic Programming
Edit Distance
+2
More
Dynamic Programming
Egg Dropping
More
Dynamic Programming
Is Subsequence
More
Dynamic Programming
Fibonacci Numbers
+10
More
Dynamic Programming
Longest Common Subsequence
+1
More
Dynamic Programming
Longest Increasing Subsequence
More
Dynamic Programming
Rod Cutting
More
Dynamic Programming
Snail
More
Dynamic Programming
Floyd Warshall
+2
More
Financial
Financial
Interest
More
General
General
Hanoi
More
General
Kmeans
More
General
Huffman Encoding
More
General
Mex
More
Geometry
Geometry
Closest Points
More
Graphs
Graphs
Dinic Maxflow
More
Graphs
Centroid Decomposition
More
Graphs
Disjoint Set Union
More
Graphs
Two Satisfiability
More
Graphs
Dijkstra
+2
More
Graphs
Depth First Search Tic Tac Toe
More
Graphs
Graph Enumeration
More
Graphs
Prim
More
Graphs
Depth First Search
+4
More
Graphs
Minimum Spanning Tree
More
Graphs
Bellman Ford
+2
More
Graphs
Breadth First Search
+3
More
Graphs
Prufer Code
More
Graphs
Strongly Connected Components
More
Graphs
Bipartite Matching
More
Greedy Methods
Greedy Methods
Fractional Knapsack
More
Hashing
Hashing
Sha 256
More
Math
Math
Two Sum
More
Math
Aliquot Sum
+3
More
Math
Matrix Ops
More
Math
Karatsuba Multiplication
More
Math
Trial Division
More
Math
Ceil
More
Math
Armstrong Number
+7
More
Math
Signum
More
Math
Random
More
Math
Fast Power
More
Math
LCM
+2
More
Math
Nthprime
More
Math
Quadratic Residue
More
Math
Baby Step Giant Step
More
Math
Amicable Numbers
More
Math
Prime Factors
More
Math
Linear Sieve
More
Math
Pollard Rho
More
Math
Sieve of Eratosthenes
+4
More
Math
Abs
+4
More
Math
Extended Euclidean Algorithm
More
Math
Faster Perfect Numbers
More
Math
Square Root
More
Math
Perfect Numbers
More
Math
Gcd of N Numbers
More
Math
Greatest Common Divisor
More
Math
Mersenne Primes
More
Math
Sine
More
Math
Collatz Sequence
More
Math
Miller Rabin
More
Math
Zellers Congruence Algorithm
More
Math
Factors
More
Math
Simpson Integration
More
Matrix
Matrix
Pascal Triangle
More
Numerical Analysis
Numerical Analysis
Gaussian Elimination
More
Numerical Analysis
Newton Raphson
More
Numerical Methods
Numerical Methods
Fast Fourier Transform
More
Others
Others
Maximum Subarray
More
Others
Doomsday
More
Range Queries
Range Queries
Heavy Light Decomposition
More
Searches
Searches
Union Find
More
Searches
Exponential Search
More
Searches
Interpolation Search
+4
More
Searches
Ternary Search Min Max
More
Searches
Fibonacci Search
+4
More
Searches
Ternary Search Recursive
More
Searches
Linear Search
+12
More
Searches
Ternary Search Min Max Recursive
More
Searches
Ternary Search
+5
More
Searches
Kth Smallest Heap
More
Searches
Jump Search
+7
More
Searches
Kth Smallest
More
Searches
Binary Search Recursive
More
Searches
Quick Select
More
Searches
Binary Search
+13
More
Sorts
Sorts
Topological Sort
More
Sorts
Comb Sort
+7
More
Sorts
Pigeonhole Sort
+2
More
Sorts
Odd Even Sort
More
Sorts
Bucket Sort
+4
More
Sorts
Radix Sort
+7
More
Sorts
Pancake Sort
+5
More
Sorts
Bubble Sort
+17
More
Sorts
Patience Sort
More
Sorts
Dutch National Flag Sort
More
Sorts
Heap Sort
+12
More
Sorts
Quick Sort
+17
More
Sorts
Insertion Sort
+16
More
Sorts
Counting Sort
+5
More
Sorts
Bogo Sort
+5
More
Sorts
Merge Sort
+17
More
Sorts
Wiggle Sort
More
Sorts
Tim Sort
+1
More
Sorts
Exchange Sort
More
Sorts
Cycle Sort
+2
More
Sorts
Sleep Sort
More
Sorts
Stooge Sort
More
Sorts
Gnome Sort
+6
More
Sorts
Shell Sort
+7
More
Sorts
Selection Sort
+13
More
Sorts
Cocktail Shaker Sort
More
Sorts
Fisher Yates Shuffle
More
Strings
Strings
Duval Algorithm
More
Strings
Knuth Morris Pratt
More
Strings
Anagram
More
Strings
Aho Corasick
More
Strings
Boyer Moore Search
More
Strings
Autocomplete Using Trie
More
Strings
Jaro Winkler Distance
More
Strings
Rabin Karp
+1
More
Strings
Palindrome
+2
More
Strings
Manacher
More
Strings
Z Algorithm
More
Strings
Hamming Distance
+4
More
Strings
Suffix Array
More
Strings
Levenshtein Distance
+1
More
Strings
Burrows Wheeler Transform
More
Strings
Suffix Tree
More
© The Algorithms 2023
What is an algorithm?
About us
Programming Languages
Contribute
Donate
GitHub
Gitter
Twitter
Source code
Contact