Repository with the implementation (in Python) and description of several computational, mathematical and statistical algorithms.
In mathematics and computer science, an algorithm is a finite sequence of well-defined, computer-implementable instructions, typically to solve a class of problems or to perform a computation.
1. Algorithm's Basics
- Greatest Common Divisor
- Fibonacci Serie
- Integer Factorization
- Tower of Hanoi
- Sorting Algorithm
- Changing Distribution
2. Divide and Conquer
- Binary Search
- Quick Sort
- Merge Sort
3. Graphs
- Graph or Undirected Simple Graph
- Graph Traversal
- Minimum Spanning Tree
- Eulerian Circuit and Path
- Shortest Path
- All-Pairs Shortest Path
- Graph Coloring
4. Dynamic Programming
- Binomial Coefficient
- World Championship problem
- Coin Change problem
- The Knapsack problem
- Longest Common Subsequence problem
- Sequence Alignment problem
5. Probabilistic Algorithms
- Pseudo-Random Number Generator
- Primality Test
- Monte Carlo Simulation
- Metropolis-Hastings Algorithm
- Las Vegas Algorithm
- Law of Large Numbers
6. Similarity Functions
- Common Similarity functions
- Manual examples
- Sklearn examples
7. Chaotic Systems
- Chaotic Systems intro
- Fractals
8. Cellular Automata
- Linear Cellular Automata (LCA)
- Reversible Linear Cellular Automata (RLCA)
conda install -c anaconda numpy
conda install -c anaconda pymc
conda install -c anaconda networkx
Any kind of feedback/criticism would be greatly appreciated (algorithm design, documentation, improvement ideas, spelling mistakes, etc...).
- G. Brassard, P. Bratley. (2006). Fundamentals of Algorithmics. Englewood Cliffs, New Jersey: Prentice-Hall, Inc.
- R.C.T. Lee, S.S. Tseng, R.C. Chang, Y.T.Tsai. (2005). Introduction to the Design and Analysis of Algorithms. A Strategic Approach. Asia: McGraw-Hill Education.
- K. Rosen. (2012). Discrete Mathematics and Its Applications. NewYork, NY: McGraw-Hill Education; Edición: 7th.
- Created by Andrés Segura Tinoco
- Created on May 17, 2019
This project is licensed under the terms of the MIT license.