Implementations of various algorithms using different programming languages (Python, Rust, Go, OCaml, C/C++, Ruby, etc), demo with Jupyter notebook (Jupyter notebook may be not available for all the languages mentioned beforehand, we'll see...). This repo will only contain classic algorithms in different computer science related fields, for more implementations, see also my hacker-rank and project-euler repos.
- Basic Algorithms
- Graph Theory
- Directed Graphs: random digraph generation, demo with a paper citation graph analysis. (Python)
- Connected Components: compute connected components of a graph using breadth-first search, demo on the computation of the resilience of a computer network. (Python)
- Dynamic Programming
- Sequence Alignment 1, Sequence Alignment 2: global and local sequence alignment algorithms using dynamic programming technique, 2 demos with one example on computational genomics, and one on Levenshtein distance. (Python)
- Graph Theory
- Data Structures
- Mathematics Fundamentals
- Random Number Generators: Mersenne twister. (C++)
- Machine Learning
- Distributed Systems
- Security