The Algorithms
Search any algorithm
About
Donate
C#
GitHub repository
Blockchain
Blockchain
Chinese Remainder Theorem
More
Ciphers
Ciphers
Caesar
More
Ciphers
Vigenere
More
Conversions
Conversions
Rgb Hsv Conversion
More
Data Compression
Data Compression
Huffman Compressor
More
Data Compression
Shannon-Fano Compressor
More
Data Structures
Data Structures
Bit Array
More
Data Structures
Timeline
More
Data Structures
/
Binary Tree
Segment Tree
+1
More
Data Structures
/
Segment Trees
Segment Tree Multiplication
More
Data Structures
/
Segment Trees
Segment Tree Update
More
Data Structures
/
Stacks
Array-based Stack
More
Data Structures
/
Stacks
List-based Stack
More
Data Structures
/
Heap
Min-Max Heap
More
Data Structures
Binaryheap
More
Data Structures
/
Heaps
Fibonacci Heap
More
Data Structures
/
Heap
Pairing Heap
More
Data Structures
Bloom Filter
More
Data Structures
/
Probabilistic
Count-Min Sketch
More
Data Structures
/
Probabilistic
HyperLogLog
More
Data Structures
/
Queues
Array-based Queue
More
Data Structures
/
Queues
List-based Queue
More
Data Structures
/
Queues
Stack-based Queue
More
Data Structures
/
Linked List
Singly Linked List
+1
More
Data Structures
/
Linked List
Doubly Linked List
+2
More
Data Structures
/
Linked List
Skip List
More
Data Structures
/
Graphs
Directed Weighted Graph Via Adjacency Matrix
More
Data Structures
SortedList
More
Data Structures
Inverted index
More
Data Structures
Unrolled linked list
More
Data Structures
Tries
More
Data Structures
/
Cache
Least Frequently Used (LFU) Cache
More
Data Structures
/
Cache
Least Recently Used (LRU) Cache
More
Divide and Conquer
Divide and Conquer
Mergesort
+17
More
Divide and Conquer
Mergesort
+17
More
Dynamic Programming
Dynamic Programming
Floyd Warshall
+2
More
Dynamic Programming
Factorial
+10
More
Encoders
Encoders
Hill
More
Encoders
NYSIIS
More
Encoders
Soundex
More
Encoders
Feistel
More
Fractals
Fractals
Mandelbrot
More
Fractals
Koch Snowflake
More
Graphs
Graphs
/
Minimum Spanning Tree
Prim's Algorithm (Adjacency Matrix)
More
Graphs
/
Minimum Spanning Tree
Kruskal's Algorithm
More
Graphs
Breadth First Search
+3
More
Graphs
Depth First Search
+4
More
Graphs
Dijkstra Shortest Path
More
Graphs
Kosaraju
More
Graphs
/
Coloring
Backtracking
More
Hashing
Hashing
Luhn
More
Knapsack
Knapsack
Naive solver
More
Knapsack
Dynamic Programming solver
More
Knapsack
Branch and bound solver
More
Knapsack
IHeuristicSolver
More
Linear Algebra
Linear Algebra
/
Distances
Euclidean
More
Linear Algebra
/
Distances
Manhattan
More
Linear Algebra
Power Iteration
More
Math
Math
Extended Euclidean Algorithm
More
Math
Aliquot Sum
+2
More
Math
Euclidean Gcd
More
Math
Modular Exponentiation
More
Math
Maclaurin Series
More
Math
Binomial Coefficient
More
Math
Perfect Square
+1
More
Math
Euler Method
More
Math
Automorphic Number
More
Math
Josephus Problem
More
Math
Sieve of Eratosthenes
+4
More
Modular Arithmetic
Modular Arithmetic
Modular Multiplicative Inverse
More
Numeric
Numeric
Amicable Numbers Checker
More
Numeric
/
Decomposition
Thin Singular Vector Decomposition
More
Numeric
/
Greatest Common Divisor
Binary GCD
More
Numeric
/
Factorization
Trial division Factorization
More
Numeric
Gauss-Jordan Elimination
More
Numeric
Keith Number Checker
More
Numeric
Pseudo-Inverse
More
Numeric
Narcissistic Number Checker
More
Numeric
Perfect Number Checker
More
Numeric
Miller-Rabin primality check
More
Numeric
KrishnamurthyNumberChecker
More
Numeric
Newton's Square Root Calculation
More
Numerical Analysis
Numerical Analysis
Lu Decomposition
More
Others
Others
Fermat Prime Checker
More
Others
Int2Binary
More
Others
GeoLocation
More
Others
Pareto Optimization
More
Others
Gauss Optimization
More
Others
Decisions Convolutions
More
Others
Welford's Variance
More
Others
Julian Easter
More
Others
Pollard's Rho
More
Problems
Problems
/
Stable Marriage
Gale-Shapley
More
Problems
/
Stable Marriage
Accepter
More
Problems
/
Stable Marriage
Proposer
More
Problems
/
Dynamic Coin Change
Dynamic
More
Recursive
Recursive
Flood Fill
More
Searches
Searches
Binary Search
+13
More
Searches
Recursive Binary Search
More
Searches
Linear Search
+12
More
Searches
Fast Search
More
Searches
Fibonacci Search
+4
More
Searches
Jump Search
+7
More
Sequences
Sequences
A000002 Kolakoski
More
Sequences
A000004 Zero
More
Sequences
A000005 Count of Divisors
More
Sequences
A000008 Make Change
More
Sequences
A000010 Euler's Totient
More
Sequences
A000012 All Ones
More
Sequences
A000027 Natural
More
Sequences
A000032 Lucas Numbers
More
Sequences
A000040 Primes
More
Sequences
A000045 Fibonacci
More
Sequences
A000079 Powers of 2
More
Sequences
A000108 Catalan
More
Sequences
A000120 1's Counting
More
Sequences
A000124 Central Polygonal Numbers
More
Sequences
A000125 Cake Numbers
More
Sequences
A000142 Factorial
More
Sequences
A000213 Tribonacci Numbers
More
Sequences
A000215 Fermat Numbers
More
Sequences
A000288 Tetranacci Numbers
More
Sequences
A000290 Squares
More
Sequences
A000292 Tetrahedral numbers
More
Sequences
A000578 Cubes
More
Sequences
A000720 PrimePi
More
Sequences
A001146 Number of Boolean Functions
More
Sequences
A001462 Golomb's
More
Sequences
A001478 Negative Integers
More
Sequences
A002110 Primorial Numbers
More
Sequences
A002717 Matchstick Triangle Arrangement
More
Sequences
A005132 Recaman's
More
Sequences
A006577 Number of '3n+1' steps to reach 1
More
Sequences
A006862 Euclid Numbers
More
Sequences
A006879 Number of Primes by Number of Digits
More
Sequences
A006880 Number of Primes by Powers of 10
More
Sequences
A007318 Binomial
More
Sequences
A007395 All Twos
More
Sequences
A010051 Binary Prime Constant
More
Sequences
A010701 All Threes
More
Sequences
A011557 Powers of 10
More
Sequences
A057588 Kummer Numbers
More
Sequences
A019434 Fermat Primes
More
Sequences
A181391 Van Eck's
More
Shufflers
Shufflers
Fisher-Yates Shuffler
More
Sorts
Sorts
Binary Insertion Sort
More
Sorts
Bogo Sort
+5
More
Sorts
Bubble Sort
+17
More
Sorts
Cocktail Sort
More
Sorts
Comb Sort
+7
More
Sorts
Cycle Sort
+2
More
Sorts
Exchange Sort
More
Sorts
Heap Sort
+12
More
Sorts
Insertion Sort
+16
More
Sorts
Pancake Sort
+5
More
Sorts
Quick Sort
+17
More
Sorts
/
Comparison
Median of three pivot
More
Sorts
/
Comparison
Middle point pivot
More
Sorts
/
Comparison
Random pivot
More
Sorts
Selection Sort
+12
More
Sorts
Shell Sort
+7
More
Sorts
Tim Sort
+1
More
Sorts
Counting Sort
+5
More
Sorts
Bucket Sort
+4
More
Sorts
Radix Sort
+7
More
Sorts
Msd Radix Sort
More
Sorts
/
Strings
Knuth–Morris–Pratt Search
More
Strings
Strings
Burrows Wheeler Transform
More
Strings
Longest Consecutive Character
More
Strings
Naive String Search
More
Strings
Rabin Karp
+1
More
Strings
Boyer Moore
More
Strings
Palindrome Checker
More
Strings
Get all permutations of a string
More
Strings
Levenshtein Distance
+1
More
Strings
Hamming Distance
+2
More
Strings
Jaro Similarity
More
Strings
Jaro Winkler Distance
More
Strings
Z-block substring search
More
Tree
Tree
Breadth First Tree Traversal
More
© The Algorithms 2022
What is an algorithm?
About us
Programming Languages
Contribute
Donate
GitHub
Gitter
Twitter
Source code
Contact