The Algorithms logo
The Algorithms

Magic Sequence

Nqueen Print All Solutions

Sudoku Solve

Graph Coloringg

Subarray Sum

Wildcard Matching

Knight Tour

N Queens All Solution Optimised

Bit Manipulation

Count Bits Flip

Count of Trailing Ciphers in Factorial N

Count of Set Bits


Modular Division


Uint 256 T

Base 64 Encoding

Hill Cipher

Caesar Cipher

Xor Cipher

Vigenere Cipher

Morse Code

A 1z 26 Cipher

Uint 128 T

Atbash Cipher

Elliptic Curve Key Exchange


Decimal to Binary

Decimal to Hexadecimal

CPU Scheduling Algorithms
Data Structures

Circular Linked List

Lowest Common Ancestor

Queue Using Linkedlist

Stack with Singly Linked List

Binary Search Tree

Circular Queue Using Linked List

Binary Search Tree 2

Dsu Path Compression

Queue Using Array

Stack Using Array

Linkedlist Implentation Usingarray

Reverse a Linked List

Stack Using Queue

Dsu Union Rank

Queue Using Two Stacks

Queue Using Array 2

Trie Using Hashmap

Queue Using Linkedlist

Doubly Linked List


Postfix Evaluation

Divide and Conquer

Karatsuba Algorithm for Fast Multiplication

Dynamic Programming

Fibonacci Bottom Up

Palindrome Partitioning

Longest Common String

Longest Increasing Subsequence (Nlogn)

Shortest Common Supersequence

Longest Increasing Subsequence

Minimum Edit Distance

Longest Palindromic Subsequence

Partition Problem

Searching of Element in Dynamic Array

Egg Dropping Puzzle

Matrix Chain Multiplication

Coin Change Topdown

Longest Common Subsequence

Fibonacci Numbers


Graham Scan Algorithm

Line Segment Intersection

Graham Scan Functions

Jarvis Algorithm




Hopcroft Karp

Max Flow with Ford Fulkerson and Edmond Karp Algo

Cycle Check Directed Graph

Bridge Finding with Tarjan Algorithm

Depth First Search with Stack

Bidirectional Dijkstra


Connected Components with Dsu

Depth First Search


Connected Components

Travelling Salesman Problem

Breadth First Search

Topological Sort by Kahns Algo

Is Graph Bipartite

Is Graph Bipartite 2


Hamiltons Cycle

Bellman Ford


Greedy Algorithms

Kruskals Minimum Spanning Tree

Prims Minimum Spanning Tree


Quadratic Probing Hash Table

Double Hash Hash Table

Linear Probing Hash Table


Linear Algebra

Gram Schmidt

Machine Learning

Adaline Learning

Kohonen Som Topology

Ordinary Least Squares Regressor

Kohonen Som Trace

Neural Network


Armstrong Number

Bisection Method

Runge Kutta

Qr Decomposition

Check Factorial

Power of Two

String Fibonacci

N Choose R

Prime Factorization

Large Number

Fast Power

Vector Cross Product

Binary Exponent

Large Factorial

Least Common Multiple

Eulers Totient Function

Fibonacci Matrix Exponentiation

Fibonacci Sum

Gcd Iterative Euclidean

Modular Inverse Fermat Little Theorem

Largest Power

Linear Recurrence Matrix

Complex Numbers

Fibonacci Fast

Binomial Calculate

Sum of Binomial Coefficient

Ncr Modulo P

Inv Sqrt

Number of Positive Divisors

Realtime Stats

Check Prime

Power for Huge Numbers

Gcd Recursive Euclidean


Gcd of N Numbers

Fibonacci Large

Finding Number of Digits in a Number


Integral Approximation 2

Sum of Digits

Extended Euclid Algorithm

Approximate Pi

Primes up to Billion

Armstrong Number

Lcm Sum

N Bonacci

Sqrt Double

Integral Approximation

Magic Number

Modular Exponentiation

Double Factorial

Sieve of Eratosthenes

Miller Rabin

Check Amicable Pair

Matrix Exponentiation

Pascal Triangle


Spiral Print

Numerical Analysis

Gaussian Elimination

Lu Decomposition

Numerical Methods

Qr Eigen Values

False Position

Ode Midpoint Euler

Ode Semi Implicit Euler

Brent Method Extrema

Fast Fourier Transform

Durand Kerner Roots

Ode Forward Euler

Babylonian Method

Successive Approximation

Golden Search Extrema

Inverse Fast Fourier Transform

Composite Simpson Rule

Newton Raphson Method

Midpoint Integral Method

Operations on Datastructures

Circular Queue Using Array

Inorder Successor of Bst

Get Size of Linked List

Intersection of Two Arrays

Reverse a Linked List Using Recusion



Fast Integer Input

Recursive Tree Traversal

Stairs Pattern

Sparse Matrix

Decimal to Roman Numeral

Iterative Tree Traversals

Happy Number

Kadanes 3

Palindrome of Number

Vector Important Functions

Buzz Number

Smallest Circle

Paranthesis Matching

Tower of Hanoi

Lru Cache


Bayes Theorem

Windowed Median

Addition Rule

Poisson Dist

Binomial Dist

Geometric Dist

Range Queries

Heavy Light Decomposition

Sparse Table

Prefix Sum Array

Persistent Seg Tree Lazy Prop

Sparse Table


Text Search

Interpolation Search 2

Sublist Search

Binary Search



Hash Search

Ternary Search

Jump Search

Floyd Cycle Detection Algo

Median Search

Saddleback Search

Exponential Search

Fibonacci Search

Linear Search



Interpolation Search


Topological Sort

Odd Even Sort

Bucket Sort

Counting Sort String

Tim Sort

Pigeonhole Sort

Bogo Sort

Cycle Sort

Selection Sort Iterative

Bead Sort

Bitonic Sort

Swap Sort

Count Inversions

Radix Sort

Quick Sort



Gnome Sort

Random Pivot Quick Sort

Quick Sort 3

Radix Sort 2

Non Recursive Merge Sort

Shell Sort

Wave Sort

Dnf Sort

Binary Insertion Sort

Comb Sort

Cocktail Selection Sort

Recursive Bubble Sort


Numeric String Sort

Shell Sort 2

Merge Insertion Sort

Library Sort

Counting Sort

Insertion Sort



Strand Sort

Merge Sort



Pancake Sort

Wiggle Sort

Bubble Sort



Heap Sort



Selection Sort Recursive


Hamming Distance

Rabin Karp


Manacher Algorithm

Knuth Morris Pratt

Brute Force String Searching

Z Function