Contains java implementation for the algortihms