Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

100 days of algorithms

This repository contains notebooks with live code to accompany 100 days of algorithms challenge.

I set the challenge for myself to implement algorithm by algorithm, day by day, until the number reaches 100.

If you are interested, here's the intro to the series and all the articles sorted by date from the latest.

The challenge was quite fun and rough, as well. Do not expect the implementations to be the best, nor fastest, nor nicest, nor bug-free. Do expect to see code written in haste. A code that contains the same amount of enthusiasm and love to algorithms as many it contains bugs.

Feel free to (re)use my code in any way you wish, but bare in mind that the source code is provided "as-is". It is on your own risk and you are solely responsible for whatever happens then.

local machine

  • download and install the latest version of Anaconda distribution
  • clone the repo: git clone
  • open terminal and run Jupyter notebook: jupyter notebook
  • open localhost:8888 in your browser


  • the codebase was developed using Python 3.6 and Anaconda 4.3.1
  • notebooks containing Bokeh plots are not directly supported by Github; you better clone the repo a run notebooks locally

alternate repository

Microsoft Azure Notebooks with Python 3.5 support