The Algorithms logo
The Algorithms

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


Modular Division


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


Decimal to Hexadecimal

Decimal to Binary

CPU Scheduling Algorithms
Data Structures

Postfix Evaluation

Lowest Common Ancestor

Stack Using Array

Reverse a Linked List


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


Graham Scan Algorithm

Graham Scan Functions

Line Segment Intersection

Jarvis Algorithm




Bellman Ford

Bridge Finding with Tarjan Algorithm


Max Flow with Ford Fulkerson and Edmond Karp Algo



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


Greedy Algorithms

Kruskals Minimum Spanning Tree

Prims Minimum Spanning Tree


Quadratic Probing Hash Table

Linear Probing Hash Table

Double Hash Hash Table


Machine Learning

Ordinary Least Squares Regressor

Neural Network

Adaline Learning

Kohonen Som Trace

Kohonen Som Topology


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


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


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


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


Reverse a Linked List Using Recusion

Get Size of Linked List

Inorder Successor of Bst


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


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


Saddleback Search

Fibonacci Search

Interpolation Search 2

Hash Search

Linear Search



Exponential Search

Median Search

Text Search

Interpolation Search

Binary Search



Jump Search

Floyd Cycle Detection Algo

Ternary Search

Sublist Search


Strand Sort

Comb Sort

Bogo Sort

Non Recursive Merge Sort

Bucket Sort

Bitonic Sort

Library Sort

Pancake Sort

Bubble Sort



Gnome Sort

Recursive Bubble Sort

Numeric String Sort

Insertion Sort



Bead Sort

Counting Sort

Binary Insertion Sort

Radix Sort 2


Tim Sort

Heap Sort



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



Quick Sort 3

Random Pivot Quick Sort

Cycle Sort

Dnf Sort

Quick Sort



Wave Sort

Wiggle Sort

Radix Sort

Cocktail Selection Sort

Topological Sort


Brute Force String Searching

Z Function


Rabin Karp

Manacher Algorithm

Knuth Morris Pratt

Hamming Distance