The Algorithms logo
The Algorithms
AboutDonate
Backtracking

Subarray Sum

Magic Sequence

Sudoku Solve

Knight Tour

Graph Coloring

Wildcard Matching

Nqueen Print All Solutions

N Queens All Solution Optimised

Bit Manipulation

Count of Trailing Ciphers in Factorial N

Count of Set Bits

Blockchain

Modular Division

Ciphers

Atbash Cipher

Vigenere Cipher

Base64 Encoding

Uint256 T

Elliptic Curve Key Exchange

A1z26 Cipher

Caesar Cipher

Morse Code

Xor Cipher

Uint128 T

Hill Cipher

Compression
Conversions

Decimal to Binary

Decimal to Hexadecimal

CPU Scheduling Algorithms
Data Structures

Postfix Evaluation

Circular Linked List

Circular Queue Using Linked List

Dsu Path Compression

Dsu Union Rank

Morrisinorder

Doubly Linked List

Queue Using Linked List

Stack Using Array

Queue Using Linked List

Queue Using Array

Stack Using Queue

Reverse a Linked List

Trie Using Hashmap

Linkedlist Implentation Usingarray

Queue Using Two Stacks

Queue Using Array2

Stack Using Linked List

Binary Search Tree2

Lowest Common Ancestor

Divide and Conquer

Karatsuba Algorithm for Fast Multiplication

Dynamic Programming

Longest Increasing Subsequence

Palindrome Partitioning

Longest Increasing Subsequence (Nlogn)

Egg Dropping Puzzle

Minimum Edit Distance

Searching of Element in Dynamic Array

Matrix Chain Multiplication

Longest Common String

Coin Change Topdown

Fibonacci Bottom Up

LongestPalindromicSubsequence

Longest Common Subsequence

Geometry

Line Segment Intersection

Jarvis Algorithm

Graphics

Spirograph

Graphs

Dijkstra

Bellman Ford

Hamiltons Cycle

Depth First Search with Stack

Max Flow with Ford Fulkerson and Edmond Karp Algo

Breadth First Search

Connected Components with Dsu

Hopcroft Karp

Cycle Check Directed Graph

Is Graph Bipartite2

Topological Sort by Kahns Algo

Dijkstra

Travelling Salesman Problem

Kruskal

Connected Components

Depth First Search

Kosaraju

Bidirectional Dijkstra

Is Graph Bipartite

Bridge Finding with Tarjan Algorithm

Greedy Algorithms

Prims Minimum Spanning Tree

Kruskals Minimum Spanning Tree

Hashing

Chaining

Quadratic Probing Hash Table

Linear Probing Hash Table

Double Hash Hash Table

Linear Algebra

Gram Schmidt

Machine Learning

Adaline Learning

Neural Network

Kohonen Som Trace

Kohonen Som Topology

Ordinary Least Squares Regressor

Math

PascalTriangle

Matrix Exponentiation

Power of Two

Fibonacci Large

Fibonacci Matrix Exponentiation

Check Factorial

Sieve of Eratosthenes

Large Factorial

Check Prime

Sum of Binomial Coefficient

Vector Cross Product

Binary Exponent

Sqrt Double

Finding Number of Digits in a Number

Integral Approximation

Miller Rabin

Check Amicable Pair

Complex Numbers

Linear Recurrence Matrix

Extended Euclid Algorithm

ArmstrongNumber

N Choose R

Binomial Calculate

Sum of Digits

EulersTotientFunction

Largest Power

Lcm Sum

Prime Factorization

Fibonacci Sum

Modular Inverse Fermat Little Theorem

Inv Sqrt

Gcd Recursive Euclidean

Gcd Iterative Euclidean

String Fibonacci

Volume

Fibonacci Numbers

Ncr Modulo P

Primes up to Billion

Least Common Multiple

Gcd of N Numbers

Power for Huge Numbers

Number of Positive Divisors

Fast Power

N Bonacci

Integral Approximation2

Fibonacci Fast

Modular Exponentiation

Realtime Stats

Prime Numbers

Large Number

Magic Number

Double Factorial

Qr Decomposition

Runge Kutta

ArmstrongNumber

Matrix

Spiral Print

Numerical Analysis

Gaussian Elimination

Lu Decomposition

Numerical Methods

Ode Midpoint Euler

Qr Eigen Values

Successive Approximation

Brent Method Extrema

Ode Forward Euler

Durand Kerner Roots

Bisection Method

Newton Raphson Method

Ode Semi Implicit Euler

Golden Search Extrema

False Position

Operations on Datastructures

Inorder Successor of Bst

Selectionsortlinkedlist

Circular Queue Using Array

Reverse a Linked List Using Recusion

Get Size of Linked List

Intersection of Two Arrays

Others

Kadanes3

Paranthesis Matching

Decimal to Roman Numeral

Happy Number

Iterative Tree Traversals

Palindrome of Number

Sparse Matrix

Fast Integer Input

Smallest Circle

Vector Important Functions

Stairs Pattern

Tower of Hanoi

Lru Cache

Buzz Number

Probability

Windowed Median

Poisson Dist

Bayes Theorem

Geometric Dist

Binomial Dist

Addition Rule

Range Queries

Persistent Seg Tree Lazy Prop

Prefix Sum Array

Sparse Table

Heavy Light Decomposition

Sparse Table

Searches

Hash Search

Jump Search

Saddleback Search

Fibonacci Search

Exponential Search

Binary Search

+12

More

Sublist Search

Linear Search

+11

More

Interpolation Search2

Median Search

Interpolation Search

Floyd Cycle Detection Algo

Text Search

Ternary Search

Sorts

Bubble Sort

+15

More

Pancake Sort

Wiggle Sort

Radix Sort2

Slowsort

Random Pivot Quick Sort

Insertion Sort

+14

More

Selection Sort Recursive

Radix Sort

Swap Sort

Merge Sort

+16

More

Dnf Sort

Library Sort

Selection Sort Iterative

Quick Sort 3

Cycle Sort

Recursive Bubble Sort

Tim Sort

Bead Sort

Odd Even Sort

Pigeonhole Sort

Cocktail Selection Sort

Bucket Sort

Merge Insertion Sort

Comb Sort

Shell Sort

Bitonic Sort

Wave Sort

Heap Sort

+12

More

Counting Sort

Quick Sort

+15

More

Count Inversions

Strand Sort

Numeric String Sort

Gnome Sort

Non Recursive Merge Sort

Bogo Sort

Counting Sort String

Shell Sort2

Topological Sort

Strings

Horspool

Brute Force String Searching

Knuth Morris Pratt

Z Function

Manacher Algorithm

Rabin Karp

HammingDistance