The Algorithms logo
The Algorithms
AboutDonate
Backtracking

Knight Tour

Graph Coloringg

Subarray Sum

Nqueen Print All Solutions

Sudoku Solve

N Queens All Solution Optimised

Magic Sequence

Wildcard Matching

Bit Manipulation

Count of Trailing Ciphers in Factorial N

Count Bits Flip

Count of Set Bits

Blockchain

Modular Division

Ciphers

Atbash Cipher

Base 64 Encoding

Uint 128 T

Uint 256 T

Hill Cipher

Elliptic Curve Key Exchange

A 1z 26 Cipher

Morse Code

Xor Cipher

Vigenere Cipher

Caesar Cipher

Compression
Conversions

Decimal to Hexadecimal

Decimal to Binary

CPU Scheduling Algorithms
Data Structures

Postfix Evaluation

Lowest Common Ancestor

Stack Using Array

Reverse a Linked List

Morrisinorder

Dsu Path Compression

Binary Search Tree

Stack Using Queue

Queue Using Array 2

Stack with Singly Linked List

Queue Using Two Stacks

Queue Using Linkedlist

Queue Using Linkedlist

Dsu Union Rank

Trie Using Hashmap

Circular Queue Using Linked List

Doubly Linked List

Binary Search Tree 2

Queue Using Array

Linkedlist Implentation Usingarray

Circular Linked List

Divide and Conquer

Karatsuba Algorithm for Fast Multiplication

Dynamic Programming

Longest Increasing Subsequence (Nlogn)

Longest Common String

Longest Increasing Subsequence

Longest Palindromic Subsequence

Matrix Chain Multiplication

Fibonacci Bottom Up

Coin Change Topdown

Minimum Edit Distance

Shortest Common Supersequence

Longest Common Subsequence

Searching of Element in Dynamic Array

Partition Problem

Egg Dropping Puzzle

Palindrome Partitioning

Fibonacci Numbers

Geometry

Graham Scan Algorithm

Graham Scan Functions

Line Segment Intersection

Jarvis Algorithm

Graphics

Spirograph

Graphs

Bellman Ford

Bridge Finding with Tarjan Algorithm

Kruskal

Max Flow with Ford Fulkerson and Edmond Karp Algo

Kosaraju

Dijkstra

Hamiltons Cycle

Cycle Check Directed Graph

Is Graph Bipartite

Depth First Search

Bidirectional Dijkstra

Connected Components with Dsu

Breadth First Search

Depth First Search with Stack

Travelling Salesman Problem

Is Graph Bipartite 2

Hopcroft Karp

Connected Components

Topological Sort by Kahns Algo

Dijkstra

Greedy Algorithms

Kruskals Minimum Spanning Tree

Prims Minimum Spanning Tree

Hashing

Quadratic Probing Hash Table

Linear Probing Hash Table

Double Hash Hash Table

Chaining

Machine Learning

Ordinary Least Squares Regressor

Neural Network

Adaline Learning

Kohonen Som Trace

Kohonen Som Topology

Math

Armstrong Number

Matrix Exponentiation

Pascal Triangle

Qr Decomposition

Bisection Method

Runge Kutta

Vector Cross Product

Approximate Pi

Miller Rabin

Ncr Modulo P

Check Prime

Fibonacci Sum

Fibonacci Large

Modular Inverse Simple

Check Amicable Pair

Lcm Sum

Gcd Iterative Euclidean

Sqrt Double

Inv Sqrt

Finding Number of Digits in a Number

Check Factorial

Gcd Recursive Euclidean

Power for Huge Numbers

Eulers Totient Function

Perimeter

Largest Power

Prime Numbers

Integral Approximation 2

Gcd of N Numbers

Power of Two

Complex Numbers

Modular Inverse Fermat Little Theorem

Fast Power

Fibonacci Fast

Binomial Calculate

Volume

Sum of Binomial Coefficient

N Choose R

Sieve of Eratosthenes

Binary Exponent

Primes up to Billion

Prime Factorization

Number of Positive Divisors

Fibonacci Matrix Exponentiation

Extended Euclid Algorithm

Modular Exponentiation

Linear Recurrence Matrix

Double Factorial

N Bonacci

String Fibonacci

Least Common Multiple

Large Number

Realtime Stats

Large Factorial

Sum of Digits

Armstrong Number

Integral Approximation

Magic Number

Matrix

Spiral Print

Numerical Analysis

Lu Decomposition

Gaussian Elimination

Numerical Methods

Inverse Fast Fourier Transform

Fast Fourier Transform

False Position

Ode Semi Implicit Euler

Babylonian Method

Midpoint Integral Method

Golden Search Extrema

Ode Forward Euler

Composite Simpson Rule

Successive Approximation

Newton Raphson Method

Durand Kerner Roots

Ode Midpoint Euler

Brent Method Extrema

Qr Eigen Values

Operations on Datastructures

Circular Queue Using Array

Intersection of Two Arrays

Selectionsortlinkedlist

Reverse a Linked List Using Recusion

Get Size of Linked List

Inorder Successor of Bst

Others

Fast Integer Input

Decimal to Roman Numeral

Palindrome of Number

Vector Important Functions

Smallest Circle

Paranthesis Matching

Stairs Pattern

Recursive Tree Traversal

Happy Number

Buzz Number

Sparse Matrix

Lru Cache

Kadanes 3

Iterative Tree Traversals

Tower of Hanoi

Probability

Windowed Median

Geometric Dist

Poisson Dist

Binomial Dist

Addition Rule

Bayes Theorem

Range Queries

Persistent Seg Tree Lazy Prop

Prefix Sum Array

Sparse Table

Heavy Light Decomposition

Sparse Table

Searches

Saddleback Search

Fibonacci Search

Interpolation Search 2

Hash Search

Linear Search

+11

More

Exponential Search

Median Search

Text Search

Interpolation Search

Binary Search

+12

More

Jump Search

Floyd Cycle Detection Algo

Ternary Search

Sublist Search

Sorts

Strand Sort

Comb Sort

Bogo Sort

Non Recursive Merge Sort

Bucket Sort

Bitonic Sort

Library Sort

Pancake Sort

Bubble Sort

+17

More

Gnome Sort

Recursive Bubble Sort

Numeric String Sort

Insertion Sort

+16

More

Bead Sort

Counting Sort

Binary Insertion Sort

Radix Sort 2

Slowsort

Tim Sort

Heap Sort

+13

More

Shell Sort 2

Merge Insertion Sort

Pigeonhole Sort

Swap Sort

Count Inversions

Selection Sort Recursive

Shell Sort

Counting Sort String

Selection Sort Iterative

Odd Even Sort

Merge Sort

+17

More

Quick Sort 3

Random Pivot Quick Sort

Cycle Sort

Dnf Sort

Quick Sort

+17

More

Wave Sort

Wiggle Sort

Radix Sort

Cocktail Selection Sort

Topological Sort

Strings

Brute Force String Searching

Z Function

Horspool

Rabin Karp

Manacher Algorithm

Knuth Morris Pratt

Hamming Distance