The community maintained a list of Algorithms and Data Structures implementations.
Algorithm |
Code |
|
|
|
|
2
|
3
|
|
|
|
Bin Sort |
ar-binsrt |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
Binary Search |
ar-bsrh |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
Breadth First Search |
gr-bfsrh |
✔ |
|
✔ |
✔ |
|
✔ |
|
|
✔ |
Bubble Sort |
ar-bsrt |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
Coin Change Problem |
ar-cochprb |
✔ |
|
|
✔ |
|
|
✔ |
✔ |
|
Depth First Search |
gr-dfsrh |
✔ |
✔ |
|
✔ |
|
✔ |
✔ |
✔ |
✔ |
Dijkstra Algorithm |
gr-dij |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
|
Exponentiation by Squaring |
ar-expsq |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
Heap Sort |
ar-hsrt |
✔ |
✔ |
✔ |
✔ |
|
✔ |
|
|
✔ |
|
Insertion Sort |
ar-isrt |
✔ |
|
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
Knuth–Morris–Pratt |
ar-kmp |
|
✔ |
✔ |
✔ |
|
✔ |
|
✔ |
✔ |
K-NN |
ar-knn |
|
✔ |
|
|
|
|
|
|
|
Largest Sum Contiguous Sub-Array |
ar-lscsa |
|
✔ |
✔ |
✔ |
|
✔ |
✔ |
|
✔ |
Linear Regression |
ar-lreg |
✔ |
✔ |
|
|
|
✔ |
|
✔ |
✔ |
Linear Search |
ar-lsrh |
✔ |
|
|
✔ |
|
|
✔ |
✔ |
Longest Common Subsequence |
ar-lcs |
|
|
|
✔ |
|
✔ |
|
|
|
Longest Increasing Subsequence |
ar-lis |
|
|
|
✔ |
|
|
|
|
|
Longest Palindromic Substring |
ar-lps |
|
|
|
|
|
|
|
|
|
Merge Sort |
ar-msrt |
✔ |
✔ |
|
✔ |
|
✔ |
✔ |
✔ |
✔ |
Modular Exponential |
ar-mexp |
|
|
|
|
|
|
|
✔ |
✔ |
Naive Search |
ar-nsrh |
|
✔ |
|
✔ |
|
|
|
|
|
Prime Factor |
ar-prfac |
✔ |
|
|
✔ |
|
✔ |
|
|
|
Prims |
gr-prims |
|
|
|
|
|
|
|
|
|
Quick Select |
ar-qsel |
|
|
|
|
|
|
|
|
|
Quick Sort |
ar-qsrt |
✔ |
|
|
✔ |
|
|
|
|
|
Radix Sort |
ar-radsrt |
|
✔ |
|
|
|
|
|
|
|
Rod Cutting Problem |
ar-rcprb |
|
|
|
|
|
|
|
|
|
Selection Sort |
ar-ssrt |
✔ |
|
|
✔ |
|
✔ |
|
|
|
Shell Sort |
ar-shsrt |
✔ |
✔ |
|
✔ |
|
✔ |
|
|
|
Sieve of Eratosthenes |
ar-soer |
|
|
|
✔ |
|
|
|
|
|
Sleep Sort |
ar-slpsrt |
✔ |
|
|
✔ |
|
|
|
✔ |
|
Data Structure |
Code |
|
|
|
|
2
|
3
|
|
|
|
Stack |
ds-stk |
✔ |
✔ |
|
✔ |
|
✔ |
|
|
✔ |
Queue |
ds-que |
✔ |
|
|
✔ |
|
✔ |
|
|
✔ |
Circular Queue |
ds-cque |
✔ |
|
|
✔ |
|
|
|
|
|
Priority Queue |
ds-pque |
|
|
|
✔ |
|
|
|
|
|
Singly Linked-list |
ds-slinklst |
✔ |
|
|
✔ |
|
✔ |
|
|
|
Doubly Linked-list |
ds-dlinklst |
|
|
|
|
|
✔ |
|
|
|
Tree |
ds-tree |
|
|
|
|
|
|
|
|
|
Binary Search Tree |
ds-btree |
✔ |
|
|
✔ |
|
✔ |
|
|
|
AVL Tree |
ds-avltree |
|
|
|
|
|
|
|
|
|
Language |
Steps |
C |
gcc <filename.c> ./a.out # unix a.exe # windows |
C++ |
g++ <filename.cpp> ./a.out # unix a.exe # windows |
Java |
javac <filename.java> java <filename> |
Python |
python <filename.py> |
Golang |
go run <filename.go> |
JavaScript |
node <filename.js> |
TypeScript |
npm install -g typescript tsc <filename.ts> node <filename.js> |
C# |
mcs <filename.cs> mono <filename.exe> |
See CONTRIBUTING.md.
If you plan to suggest a new algorithm or DS, please make sure to read the guidelines.