k-NN classification: Given a data point in the test set and a training set for which class labels are given, find the k nearest data points in the training set and target label is computed as the mode of the class label of the k nearest neighbours.
Advantages : Simple to implement. Can learn non-linear boundary, robust to noise in the input data.
Disadvantages: Inefficient since the entire training data is processed for every prediction. Time complexity is O(dMNlog(k)) where d is the dimension of the data M the size of training data and N the size of test data.