The Algorithms logo
The Algorithms
AboutDonate
undefined

Knapsack

Backtracking

Wildcard Matching

Sudoku Solve

Nqueen Print All Solutions

Knight Tour

Subarray Sum

Graph Coloringg

N Queens All Solution Optimised

Magic Sequence

Bit Manipulation

Count of Trailing Ciphers in Factorial N

Count of Set Bits

Count Bits Flip

Blockchain

Modular Division

Ciphers

Elliptic Curve Key Exchange

Hill Cipher

Base 64 Encoding

Vigenere Cipher

Atbash Cipher

Xor Cipher

Caesar Cipher

Morse Code

Uint 128 T

A 1z 26 Cipher

Uint 256 T

Compression
Conversions

Decimal to Binary

Decimal to Hexadecimal

CPU Scheduling Algorithms
Data Structures

Morrisinorder

Dsu Path Compression

Stack with Singly Linked List

Circular Queue Using Linked List

Linkedlist Implentation Usingarray

Queue Using Linked List

Queue Using Two Stacks

Binary Search Tree

Doubly Linked List

Queue Using Linked List

Stack Using Queue

Queue Using Array

Reverse a Linked List

Dsu Union Rank

Queue Using Array 2

Stack Using Array

Trie Using Hashmap

Binary Search Tree 2

Circular Linked List

Lowest Common Ancestor

Postfix Evaluation

Divide and Conquer

Karatsuba Algorithm for Fast Multiplication

Dynamic Programming

Fibonacci Numbers

Shortest Common Supersequence

Longest Increasing Subsequence (Nlogn)

Partition Problem

Longest Increasing Subsequence

Coin Change Topdown

Egg Dropping Puzzle

Matrix Chain Multiplication

Palindrome Partitioning

Longest Palindromic Subsequence

Searching of Element in Dynamic Array

Minimum Edit Distance

Longest Common Subsequence

Fibonacci Bottom Up

Longest Common String

Geometry

Graham Scan Functions

Line Segment Intersection

Graham Scan Algorithm

Jarvis Algorithm

Graphics

Spirograph

Graphs

Dijkstra

Travelling Salesman Problem

Bridge Finding with Tarjan Algorithm

Hamiltons Cycle

Kosaraju

Is Graph Bipartite 2

Topological Sort by Kahns Algo

Depth First Search with Stack

Breadth First Search

Dijkstra

Max Flow with Ford Fulkerson and Edmond Karp Algo

Is Graph Bipartite

Depth First Search

Connected Components with Dsu

Bidirectional Dijkstra

Connected Components

Cycle Check Directed Graph

Hopcroft Karp

Kruskal

Bellman Ford

Greedy Algorithms

Prims Minimum Spanning Tree

Kruskals Minimum Spanning Tree

Hashing

Double Hash Hash Table

Chaining

Linear Probing Hash Table

Quadratic Probing Hash Table

Linear Algebra

Gram Schmidt

Machine Learning

Adaline Learning

Ordinary Least Squares Regressor

Kohonen Som Trace

Neural Network

Kohonen Som Topology

Math

Large Number

Binary Exponent

Modular Inverse Fermat Little Theorem

Gcd of N Numbers

Lcm Sum

Fibonacci Matrix Exponentiation

Ncr Modulo P

Extended Euclid Algorithm

Fibonacci Fast

Approximate Pi

Miller Rabin

Magic Number

Fibonacci Large

Sum of Binomial Coefficient

Power of Two

Integral Approximation 2

Sum of Digits

Gcd Iterative Euclidean

Largest Power

Least Common Multiple

Sieve of Eratosthenes

Power for Huge Numbers

Check Amicable Pair

Gcd Recursive Euclidean

Finding Number of Digits in a Number

Fibonacci Sum

String Fibonacci

Sqrt Double

Modular Exponentiation

Linear Recurrence Matrix

Fast Power

Large Factorial

Vector Cross Product

Inv Sqrt

N Bonacci

Realtime Stats

Number of Positive Divisors

Check Prime

Check Factorial

Volume

N Choose R

Perimeter

Complex Numbers

Prime Factorization

Eulers Totient Function

Double Factorial

Armstrong Number

Integral Approximation

Primes up to Billion

Binomial Calculate

Qr Decomposition

Runge Kutta

Bisection Method

Pascal Triangle

Matrix Exponentiation

Armstrong Number

Matrix

Spiral Print

Numerical Analysis

Lu Decomposition

Gaussian Elimination

Numerical Methods

Ode Semi Implicit Euler

Ode Forward Euler

Qr Eigen Values

Successive Approximation

False Position

Newton Raphson Method

Ode Midpoint Euler

Babylonian Method

Fast Fourier Transform

Durand Kerner Roots

Inverse Fast Fourier Transform

Brent Method Extrema

Golden Search Extrema

Midpoint Integral Method

Composite Simpson Rule

Operations on Datastructures

Reverse a Linked List Using Recusion

Circular Queue Using Array

Selectionsortlinkedlist

Inorder Successor of Bst

Intersection of Two Arrays

Get Size of Linked List

Others

Buzz Number

Kadanes 3

Vector Important Functions

Recursive Tree Traversal

Decimal to Roman Numeral

Sparse Matrix

Smallest Circle

Paranthesis Matching

Tower of Hanoi

Palindrome of Number

Iterative Tree Traversals

Lru Cache

Stairs Pattern

Fast Integer Input

Happy Number

Probability

Bayes Theorem

Windowed Median

Addition Rule

Binomial Dist

Geometric Dist

Poisson Dist

Range Queries

Heavy Light Decomposition

Prefix Sum Array

Persistent Seg Tree Lazy Prop

Searches

Fibonacci Search

Jump Search

Text Search

Linear Search

+11

More

Hash Search

Saddleback Search

Binary Search

+12

More

Median Search

Sublist Search

Floyd Cycle Detection Algo

Exponential Search

Ternary Search

Interpolation Search

Interpolation Search 2

Sorts

Merge Sort

+17

More

Shell Sort 2

Shell Sort

Binary Insertion Sort

Quick Sort

+17

More

Comb Sort

Quick Sort 3

Insertion Sort

+15

More

Bucket Sort

Radix Sort

Wiggle Sort

Selection Sort Iterative

Slowsort

Strand Sort

Bogo Sort

Odd Even Sort

Library Sort

Cycle Sort

Swap Sort

Bubble Sort

+16

More

Numeric String Sort

Merge Insertion Sort

Bead Sort

Counting Sort String

Heap Sort

+13

More

Dnf Sort

Radix Sort 2

Random Pivot Quick Sort

Gnome Sort

Recursive Bubble Sort

Bitonic Sort

Count Inversions

Wave Sort

Pigeonhole Sort

Selection Sort Recursive

Non Recursive Merge Sort

Tim Sort

Counting Sort

Pancake Sort

Cocktail Selection Sort

Topological Sort

Strings

Hamming Distance

Brute Force String Searching

Manacher Algorithm

Horspool

Rabin Karp

Knuth Morris Pratt

Z Function