KNN-implementation-from-scratch