Community (college) maintained list of Algorithms and Data Structures implementations.
Algorithm | C | CPP | Java | Python | Golang | JavaScript |
---|---|---|---|---|---|---|
Bin Sort | ✅ | ✅ | ||||
Binary Search | ✅ | ✅ | ✅ | ✅ | ✅ | |
Coin Change Problem | ✅ | ✅ | ✅ | ✅ | ||
Counting Sort | ✅ | ✅ | ✅ | |||
Depth First Traversal | ✅ | |||||
Dijkstra Algorithm | ✅ | ✅ | ✅ | |||
Euclidean GCD | ✅ | ✅ | ✅ | ✅ | ||
Exponentiation by Squaring | ✅ | ✅ | ✅ | ✅ | ✅ | |
Heap Sort | ✅ | ✅ | ✅ | ✅ | ||
Insertion Sort | ✅ | ✅ | ✅ | ✅ | ||
k-NN | ✅ | |||||
Largest Sum Contiguous Subarray | ✅ | ✅ | ✅ | ✅ | ||
Linear Search | ✅ | ✅ | ✅ | ✅ | ✅ | |
Longest Common Subsequence | ✅ | ✅ | ✅ | ✅ | ||
Merge Sort | ✅ | ✅ | ✅ | |||
Modular Exponential | ✅ | ✅ | ✅ | ✅ | ✅ | |
N-Queen Problem | ✅ | ✅ | ✅ | |||
Prime Factor | ✅ | ✅ | ✅ | ✅ | ✅ | |
Prims | ✅ | ✅ | ||||
Quick Select | ✅ | ✅ | ✅ | |||
Quicksort | ✅ | ✅ | ✅ | ✅ | ||
Rod Cutting Problem | ✅ | ✅ | ✅ | ✅ | ✅ | |
Shell Sort | ✅ | ✅ | ✅ | ✅ | ||
Sieve of Eratosthenes | ✅ | ✅ | ✅ | ✅ | ✅ | |
Sleep Sort | ✅ | ✅ |
Data Structure | C | CPP | Java | Python | Golang | JavaScript |
---|---|---|---|---|---|---|
AVL Tree | ✅ | |||||
Binary Search Tree | ✅ | |||||
Linked List | ✅ | ✅ | ||||
Stack | ✅ | ✅ | ✅ | ✅ | ✅ | |
Trie | ✅ |
Language | Steps |
---|---|
C | gcc [filename.c] |
CPP | g++ [filename.cpp] |
Java | javac [filename.java] |
Python | python [filename.py] |
Golang | go run [filename.go] |
JavaScript | node [filename.js] |
- Algorithms - Learneroo
- Awesome-Algorithms
- Algorithms List - GeeksforGeeks
- Intro to Algorithms - Khan Academy
- Popular Data Structures and Algorithms - Codechef
- Stanford-ACM-Codes - A list of codes written by previous Stanford ACM team members and coaches.
See CONTRIBUTING.md.
If you plan to suggest a new algorithm or DS, please make sure to read the guidelines.
Idea by @Monal5031
Only project maintainers should merge a PR. Other members can add their reviews to a PR but the merging should be done by only a project maintainer.