The Algorithms
Search any algorithm
About
Donate
C++
GitHub repository
Documentation
Backtracking
Backtracking
Generate Parentheses
More
Backtracking
Graph Coloring
More
Backtracking
Knight Tour
More
Backtracking
Magic Sequence
More
Backtracking
Minimax
More
Backtracking
N Queens
More
Backtracking
N Queens All Solution Optimised
More
Backtracking
Nqueen Print All Solutions
More
Backtracking
Rat Maze
More
Backtracking
Subarray Sum
More
Backtracking
Subset Sum
More
Backtracking
Sudoku Solver
+1
More
Backtracking
Subset Sum
More
Bit Manipulation
Bit Manipulation
Count Bits Flip
More
Bit Manipulation
Count of Set Bits
More
Bit Manipulation
Count of Trailing Ciphers in Factorial N
More
Bit Manipulation
Find Non Repeating Number
More
Bit Manipulation
Next Higher Number with Same Number of Set Bits
More
Bit Manipulation
Power of 2
More
Bit Manipulation
Set Kth Bit
More
Bit Manipulation
Travelling Salesman Using Bit Manipulation
More
Ciphers
Ciphers
A 1z 26 Cipher
More
Ciphers
Atbash Cipher
More
Ciphers
Base 64 Encoding
More
Ciphers
Caesar Cipher
More
Ciphers
Elliptic Curve Key Exchange
More
Ciphers
Hill Cipher
More
Ciphers
Morse Code
More
Ciphers
Uint 128 T
More
Ciphers
Uint 256 T
More
Ciphers
Vigenere Cipher
More
Ciphers
XOR Cipher
+2
More
Compression
Compression
Huffman
More
Conversions
Conversions
Decimal to Binary
+4
More
Conversions
Decimal to Hexadecimal
More
CPU Scheduling Algorithms
CPU Scheduling Algorithms
Fcfs Scheduling
More
Data Structures
Data Structures
/
Binary Tree
AVL Tree
+2
More
Data Structures
/
Binary Tree
Binary Search Tree
+3
More
Data Structures
Binary Search Tree 2
More
Data Structures
/
Heap
Binary Heap
More
Data Structures
/
Hashing
Bloom Filter
More
Data Structures
Circular Queue Using Linked List
More
Data Structures
Cll
More
Data Structures
Cll
More
Data Structures
/
CLL
Main Cll
More
Data Structures
Disjoint Set
More
Data Structures
/
Linked List
Doubly Linked List
+4
More
Data Structures
Dsu Path Compression
More
Data Structures
Dsu Union Rank
More
Data Structures
Linked List
+1
More
Data Structures
Linkedlist Implentation Usingarray
More
Data Structures
List Array
More
Data Structures
Morrisinorder
More
Data Structures
Node
More
Data Structures
Queue
+1
More
Data Structures
Queue Using Array
More
Data Structures
Queue Using Array 2
More
Data Structures
Queue Using Linked List
More
Data Structures
Queue Using Linked List
More
Data Structures
Queue Using Two Stacks
More
Data Structures
Rb Tree
More
Data Structures
Reverse a Linked List
More
Data Structures
/
Binary Tree
Segment Tree
+3
More
Data Structures
/
Linked List
Skip List
More
Data Structures
/
Array
Sparse Table
More
Data Structures
Stack
+3
More
Data Structures
Stack Using Array
More
Data Structures
/
Stacks
Stack with Singly Linked List
+3
More
Data Structures
Stack Using Queue
More
Data Structures
/
Binary Tree
Treap
More
Data Structures
Tree
More
Data Structures
Tree 234
More
Data Structures
Trie Modern
More
Data Structures
Trie Tree
More
Data Structures
Trie Using Hashmap
More
Data Structures
/
Binary Tree
Lowest Common Ancestor
More
Data Structures
/
Hashing
/
Number Theory
Prime
+8
More
Data Structures
/
Hashing
/
Number Theory
Prime
+8
More
Data Structures
/
Linked List
Circular Linked List
More
Data Structures
/
Stacks
Postfix Evaluation
More
Data Structures
/
Binary Tree
Fenwick Tree
More
Data Structures
/
Array
Sparse Table
More
Divide and Conquer
Divide and Conquer
Karatsuba Algorithm for Fast Multiplication
More
Divide and Conquer
Strassen Matrix Multiplication
More
Divide and Conquer
Mergesort
+19
More
Dynamic Programming
Dynamic Programming
Wildcard Matching
More
Dynamic Programming
0 1 Knapsack
More
Dynamic Programming
Abbreviation
More
Dynamic Programming
Catalan Numbers
More
Dynamic Programming
Coin Change
+6
More
Dynamic Programming
Coin Change Topdown
More
Dynamic Programming
Cut Rod
More
Dynamic Programming
Edit Distance
+1
More
Dynamic Programming
Egg Dropping Puzzle
More
Dynamic Programming
Fibonacci Bottom Up
More
Dynamic Programming
Floyd Warshall
+3
More
Dynamic Programming
/
Sliding Window
House Robber
More
Dynamic Programming
Kadane
More
Dynamic Programming
Kadane 2
More
Dynamic Programming
Longest Common String
More
Dynamic Programming
Longest Common Subsequence
+1
More
Dynamic Programming
Longest Increasing Subsequence
More
Dynamic Programming
Longest Increasing Subsequence (Nlogn)
More
Dynamic Programming
Longest Palindromic Subsequence
More
Dynamic Programming
Matrix Chain Multiplication
More
Dynamic Programming
Maximum Circular Subarray
More
Dynamic Programming
Minimum Edit Distance
More
Dynamic Programming
Palindrome Partitioning
More
Dynamic Programming
Partition Problem
More
Dynamic Programming
Searching of Element in Dynamic Array
More
Dynamic Programming
Shortest Common Supersequence
More
Dynamic Programming
Tree Height
More
Dynamic Programming
Word Break
More
Dynamic Programming
Knapsack
+2
More
Dynamic Programming
Factorial
+12
More
Dynamic Programming
Fibonacci Numbers
+11
More
Games
Games
Memory Game
More
Geometry
Geometry
Graham Scan Algorithm
More
Geometry
Graham Scan Functions
More
Geometry
Jarvis Algorithm
More
Geometry
Line Segment Intersection
More
Graphics
Graphics
Spirograph
More
Graphs
Graphs
Bellman Ford
+3
More
Graphs
Bi Directional Dijkstra
More
Graphs
Breadth First Search
+3
More
Graphs
Bridge Finding with Tarjan Algorithm
More
Graphs
Connected Components
More
Graphs
Connected Components with Dsu
More
Graphs
Cycle Check Directed Graph
More
Graphs
Depth First Search
+4
More
Graphs
Depth First Search with Stack
More
Graphs
Dijkstra
+3
More
Graphs
Hamiltons Cycle
More
Graphs
Hopcroft Karp
More
Graphs
Is Graph Bipartite
More
Graphs
Is Graph Bipartite 2
More
Graphs
Kosaraju
More
Graphs
Kruskal
More
Graphs
Max Flow with Ford Fulkerson and Edmond Karp Algo
More
Graphs
Prim
More
Graphs
Topological Sort by Kahns Algo
More
Graphs
Travelling Salesman Problem
More
Graphs
Dijkstra
+3
More
Greedy Algorithms
Greedy Algorithms
Boruvkas Minimum Spanning Tree
More
Greedy Algorithms
Jumpgame
More
Greedy Algorithms
Kruskals Minimum Spanning Tree
More
Greedy Algorithms
Prims Minimum Spanning Tree
More
Hashing
Hashing
Chaining
More
Hashing
Double Hash Hash Table
More
Hashing
Linear Probing Hash Table
More
Hashing
Md 5
More
Hashing
Quadratic Probing Hash Table
More
Hashing
Sha 1
More
Hashing
Sha 256
More
Linear Algebra
Linear Algebra
Gaussian Elimination
More
Linear Algebra
Lu Decomposition
More
Machine Learning
Machine Learning
A Star Search
More
Machine Learning
Adaline Learning
More
Machine Learning
K Nearest Neighbors
More
Machine Learning
Kohonen Som Topology
More
Machine Learning
Kohonen Som Trace
More
Machine Learning
Neural Network
More
Machine Learning
Ordinary Least Squares Regressor
More
Machine Learning
Vector Ops
More
Math
Math
/
Special Numbers
Armstrong Number
+8
More
Math
Aliquot Sum
+4
More
Math
Approximate Pi
More
Math
Area
More
Math
/
Special Numbers
Armstrong Number
+8
More
Math
Binary Exponent
More
Math
Binomial Calculate
More
Math
Check Amicable Pair
More
Math
Check Factorial
More
Math
Complex Numbers
More
Math
Double Factorial
More
Math
Eratosthenes
More
Math
Euler's Totient
+2
More
Math
Extended Euclid Algorithm
More
Math
Fast Power
More
Math
Fibonacci Fast
More
Math
Fibonacci Large
More
Math
Fibonacci Matrix Exponentiation
More
Math
Fibonacci Sum
More
Math
Finding Number of Digits in a Number
More
Math
Gcd Iterative Euclidean
More
Math
Gcd of N Numbers
More
Math
Gcd Recursive Euclidean
More
Math
Integral Approximation
More
Math
Integral Approximation 2
More
Math
Inv Sqrt
More
Math
Iterative Factorial
More
Math
Large Factorial
More
Math
Large Number
More
Math
Largest Power
More
Math
LCM
+2
More
Math
Least Common Multiple
More
Math
Linear Recurrence Matrix
More
Math
Magic Number
More
Math
Miller Rabin
More
Math
Modular Division
More
Math
Modular Exponentiation
More
Math
Modular Inverse Fermat Little Theorem
More
Math
Modular Inverse Simple
More
Math
N Bonacci
More
Math
N Choose R
More
Math
Ncr Modulo P
More
Math
Number of Positive Divisors
More
Math
Perimeter
More
Math
Power for Huge Numbers
More
Math
Power of Two
More
Math
Prime Factorization
More
Math
Primes up to Billion
More
Math
Quadratic Equations Complex Numbers
More
Math
Realtime Stats
More
Math
Sieve of Eratosthenes
+4
More
Math
Sqrt Double
More
Math
String Fibonacci
More
Math
Sum of Binomial Coefficient
More
Math
Sum of Digits
+1
More
Math
Vector Cross Product
More
Math
Volume
More
Math
Bisection Method
More
Math
Qr Decomposition
More
Math
/
Numerical Analysis
Runge Kutta
More
Math
/
Special Numbers
Happy Number
More
Math
Matrix Exponentiation
More
Matrix
Matrix
Pascal Triangle
More
Matrix
Spiral Print
More
Numerical Methods
Numerical Methods
Babylonian Method
More
Numerical Methods
Brent Method Extrema
More
Numerical Methods
Composite Simpson Rule
More
Numerical Methods
Durand Kerner Roots
More
Numerical Methods
False Position
More
Numerical Methods
Fast Fourier Transform
More
Numerical Methods
Golden Search Extrema
More
Numerical Methods
Gram Schmidt
More
Numerical Methods
Inverse Fast Fourier Transform
More
Numerical Methods
Lu Decompose
More
Numerical Methods
Midpoint Integral Method
More
Numerical Methods
Newton Raphson Method
More
Numerical Methods
Ode Forward Euler
More
Numerical Methods
Ode Midpoint Euler
More
Numerical Methods
Ode Semi Implicit Euler
More
Numerical Methods
Qr Decompose
More
Numerical Methods
Qr Eigen Values
More
Numerical Methods
Successive Approximation
More
Operations on Datastructures
Operations on Datastructures
Array Left Rotation
More
Operations on Datastructures
Array Right Rotation
More
Operations on Datastructures
Circular Queue Using Array
More
Operations on Datastructures
Get Size of Linked List
More
Operations on Datastructures
Inorder Successor of Bst
More
Operations on Datastructures
Intersection of Two Arrays
More
Operations on Datastructures
Reverse a Linked List Using Recusion
More
Operations on Datastructures
Reverse Binary Tree
More
Operations on Datastructures
Selectionsortlinkedlist
More
Operations on Datastructures
Trie Multiple Search
More
Operations on Datastructures
Union of Two Arrays
More
Others
Others
Buzz Number
More
Others
Decimal to Roman Numeral
More
Others
Easter
More
Others
Fast Integer Input
More
Others
Iterative Tree Traversals
More
Others
Kadanes 3
More
Others
Kelvin to Celsius
More
Others
Lru Cache
More
Others
Palindrome of Number
More
Others
Paranthesis Matching
More
Others
Recursive Tree Traversal
More
Others
Smallest Circle
More
Others
Sparse Matrix
More
Others
Stairs Pattern
More
Others
Tower of Hanoi
+1
More
Others
Vector Important Functions
More
Physics
Physics
Ground to Ground Projectile Motion
More
Probability
Probability
Addition Rule
More
Probability
Bayes Theorem
More
Probability
Binomial Dist
More
Probability
Geometric Dist
More
Probability
Poisson Dist
More
Probability
Windowed Median
More
Range Queries
Range Queries
Heavy Light Decomposition
More
Range Queries
Mo
More
Range Queries
Persistent Seg Tree Lazy Prop
More
Range Queries
Prefix Sum Array
More
Range Queries
Segtree
More
Searches
Searches
Binary Search
+15
More
Searches
Exponential Search
More
Searches
Fibonacci Search
+4
More
Searches
Floyd Cycle Detection Algo
More
Searches
Hash Search
More
Searches
Interpolation Search
+6
More
Searches
Interpolation Search 2
More
Searches
Jump Search
+8
More
Searches
Linear Search
+14
More
Searches
Median Search
More
Searches
Median Search 2
More
Searches
Saddleback Search
More
Searches
Sublist Search
More
Searches
Ternary Search
+5
More
Searches
Text Search
More
Sorts
Sorts
Topological Sort
+1
More
Sorts
Bead Sort
+2
More
Sorts
Binary Insertion Sort
+4
More
Sorts
Bitonic Sort
More
Sorts
Bogo Sort
+7
More
Sorts
Bubble Sort
+19
More
Sorts
Bucket Sort
+5
More
Sorts
Cocktail Selection Sort
More
Sorts
Comb Sort
+8
More
Sorts
Count Inversions
More
Sorts
Counting Sort
+8
More
Sorts
Counting Sort String
More
Sorts
Cycle Sort
+5
More
Sorts
Dnf Sort
More
Sorts
Gnome Sort
+7
More
Sorts
Heap Sort
+15
More
Sorts
Insertion Sort
+18
More
Sorts
Library Sort
More
Sorts
Merge Insertion Sort
More
Sorts
Non Recursive Merge Sort
More
Sorts
Numeric String Sort
More
Sorts
Odd Even Sort
+1
More
Sorts
Pancake Sort
+6
More
Sorts
Pigeonhole Sort
+2
More
Sorts
Quick Sort
+19
More
Sorts
Quick Sort 3
More
Sorts
Radix Sort
+9
More
Sorts
Radix Sort 2
More
Sorts
Random Pivot Quick Sort
More
Sorts
Recursive Bubble Sort
More
Sorts
Selection Sort Iterative
More
Sorts
Selection Sort Recursive
More
Sorts
Shell Sort
+9
More
Sorts
Shell Sort 2
More
Sorts
Slowsort
More
Sorts
Stooge Sort
+1
More
Sorts
Strand Sort
More
Sorts
Swap Sort
More
Sorts
Tim Sort
+2
More
Sorts
Wave Sort
More
Sorts
Wiggle Sort
More
Strings
Strings
Hamming Distance
+4
More
Strings
Boyer Moore
More
Strings
Brute Force String Searching
More
Strings
Horspool
More
Strings
Knuth Morris Pratt
More
Strings
Manacher Algorithm
More
Strings
Rabin Karp
+2
More
Strings
Z Function
More
© The Algorithms 2023
What is an algorithm?
About us
Programming Languages
Contribute
Donate
GitHub
Gitter
X
Source code
Contact