The Algorithms logo
The Algorithms
AboutDonate
undefined

Knapsack

Backtracking

Wildcard Matching

Knight Tour

Nqueen Print All Solutions

Graph Coloring

N Queens All Solution Optimised

Magic Sequence

Subarray Sum

Bit Manipulation

Count of Set Bits

Count of Trailing Ciphers in Factorial N

Count Bits Flip

Blockchain

Modular Division

Ciphers

Morse Code

Elliptic Curve Key Exchange

Uint 128 T

Hill Cipher

Caesar Cipher

Base 64 Encoding

Xor Cipher

Atbash Cipher

Vigenere Cipher

Uint 256 T

A 1z 26 Cipher

Compression
Conversions

Decimal to Hexadecimal

Decimal to Binary

CPU Scheduling Algorithms
Data Structures

Circular Linked List

Binary Search Tree

Trie Using Hashmap

Dsu Path Compression

Stack Using Array

Queue Using Linked List

Queue Using Two Stacks

Queue Using Linked List

Queue Using Array

Binary Search Tree 2

Circular Queue Using Linked List

Stack Using Queue

Morrisinorder

Reverse a Linked List

Queue Using Array 2

Linkedlist Implentation Usingarray

Stack with Singly Linked List

Doubly Linked List

Dsu Union Rank

Lowest Common Ancestor

Postfix Evaluation

Divide and Conquer

Karatsuba Algorithm for Fast Multiplication

Dynamic Programming

Searching of Element in Dynamic Array

Longest Common Subsequence

Fibonacci Bottom Up

Partition Problem

Egg Dropping Puzzle

Matrix Chain Multiplication

Longest Increasing Subsequence (Nlogn)

Longest Common String

Shortest Common Supersequence

Palindrome Partitioning

Coin Change Topdown

Floyd Warshall

Longest Increasing Subsequence

Minimum Edit Distance

Longest Palindromic Subsequence

Geometry

Jarvis Algorithm

Graham Scan Functions

Line Segment Intersection

Graham Scan Algorithm

Graphics

Spirograph

Graphs

Dijkstra

Kruskal

Travelling Salesman Problem

Bidirectional Dijkstra

Hamiltons Cycle

Kosaraju

Bridge Finding with Tarjan Algorithm

Is Graph Bipartite

Is Graph Bipartite 2

Hopcroft Karp

Topological Sort by Kahns Algo

Connected Components

Depth First Search

Max Flow with Ford Fulkerson and Edmond Karp Algo

Connected Components with Dsu

Breadth First Search

Depth First Search with Stack

Dijkstra

Cycle Check Directed Graph

Bellman Ford

Greedy Algorithms

Kruskals Minimum Spanning Tree

Prims Minimum Spanning Tree

Hashing

Quadratic Probing Hash Table

Linear Probing Hash Table

Chaining

Double Hash Hash Table

Machine Learning

Neural Network

Kohonen Som Topology

Adaline Learning

Ordinary Least Squares Regressor

Kohonen Som Trace

Math

Modular Inverse Simple

Linear Recurrence Matrix

Fibonacci Large

Sum of Digits

Fast Power

Power of Two

Largest Power

Magic Number

Sqrt Double

Check Prime

Number of Positive Divisors

Vector Cross Product

Gcd Recursive Euclidean

Primes up to Billion

Sieve of Eratosthenes

Approximate Pi

Perimeter

Double Factorial

Lcm Sum

Large Number

Prime Factorization

Realtime Stats

Power for Huge Numbers

Ncr Modulo P

Check Factorial

Modular Exponentiation

Inv Sqrt

Check Amicable Pair

Sum of Binomial Coefficient

Armstrong Number

Gcd Iterative Euclidean

Extended Euclid Algorithm

Gcd of N Numbers

Modular Inverse Fermat Little Theorem

Large Factorial

Fibonacci Sum

Fibonacci Fast

Least Common Multiple

Miller Rabin

Binomial Calculate

Fibonacci Numbers

Binary Exponent

Integral Approximation

Prime Numbers

Integral Approximation 2

Complex Numbers

Eulers Totient Function

Finding Number of Digits in a Number

N Choose R

String Fibonacci

Volume

N Bonacci

Fibonacci Matrix Exponentiation

Pascal Triangle

Matrix Exponentiation

Armstrong Number

Qr Decomposition

Runge Kutta

Bisection Method

Matrix

Spiral Print

Numerical Analysis

Gaussian Elimination

Lu Decomposition

Numerical Methods

Brent Method Extrema

Fast Fourier Transform

Newton Raphson Method

Successive Approximation

Ode Midpoint Euler

Ode Forward Euler

Ode Semi Implicit Euler

Qr Eigen Values

Babylonian Method

Inverse Fast Fourier Transform

Golden Search Extrema

Composite Simpson Rule

False Position

Midpoint Integral Method

Durand Kerner Roots

Operations on Datastructures

Get Size of Linked List

Reverse a Linked List Using Recusion

Inorder Successor of Bst

Intersection of Two Arrays

Circular Queue Using Array

Selectionsortlinkedlist

Others

Smallest Circle

Lru Cache

Happy Number

Iterative Tree Traversals

Stairs Pattern

Fast Integer Input

Kadanes 3

Recursive Tree Traversal

Vector Important Functions

Buzz Number

Sparse Matrix

Tower of Hanoi

Paranthesis Matching

Palindrome of Number

Decimal to Roman Numeral

Probability

Geometric Dist

Bayes Theorem

Poisson Dist

Windowed Median

Binomial Dist

Addition Rule

Range Queries

Prefix Sum Array

Persistent Seg Tree Lazy Prop

Sparse Table

Heavy Light Decomposition

Sparse Table

Searches

Interpolation Search 2

Fibonacci Search

Linear Search

+11

More

Jump Search

Ternary Search

Saddleback Search

Binary Search

+12

More

Exponential Search

Median Search

Text Search

Interpolation Search

Floyd Cycle Detection Algo

Sublist Search

Hash Search

Sorts

Shell Sort

Binary Insertion Sort

Cocktail Selection Sort

Wiggle Sort

Bubble Sort

+17

More

Comb Sort

Numeric String Sort

Tim Sort

Non Recursive Merge Sort

Library Sort

Shell Sort 2

Radix Sort

Bitonic Sort

Insertion Sort

+16

More

Count Inversions

Counting Sort

Gnome Sort

Cycle Sort

Wave Sort

Selection Sort Iterative

Selection Sort Recursive

Bogo Sort

Counting Sort String

Bucket Sort

Slowsort

Heap Sort

+13

More

Quick Sort

+17

More

Dnf Sort

Odd Even Sort

Strand Sort

Quick Sort 3

Recursive Bubble Sort

Radix Sort 2

Bead Sort

Pigeonhole Sort

Merge Insertion Sort

Swap Sort

Pancake Sort

Random Pivot Quick Sort

Topological Sort

Strings

Horspool

Manacher Algorithm

Knuth Morris Pratt

Z Function

Brute Force String Searching

Rabin Karp

Hamming Distance