k-nearest Neigbors kNN: Weights, Tie-Breaks, Majority Vote alternatives? I am programming a kNN algorithm and would like to know the following:

Tie-Breaks:


What happens if there is no clear winner in the majority voting? E.g. all k nearest neighbors are from different classes, or for k=4 there are 2 neighbors from class A and 2 neighbors from class B?
What happens if it is not possible to determine exactly k nearest neighbors because there are more neighbors which have the same distance? E.g. for the list of distances (x1;2), (x2;3.5), (x3;4.8), (x4;4.8), (x5;4.8), (x6;9.2) it would not be possible to determine the k=3 or k=4 nearest neighbors, because the 3rd to 5th neighbors all have same distance.


Weights:


I read it is good to weight the k-nearest neighbors before selecting the winning class. How does that work? I.e. how are the neighbors weighted and how is then the class determined?


Majority Vote alternatives:


Are there other rules/strategies to determine the winning class other than majority vote?
Regarding weights and vote alternatives, you're probably considering weights being 'uniform' in your kNN-classifier. Recall that they don't have to be! You can use other weighting-functions to make closer points having greater influence.
Regarding weights and vote alternatives, you're probably considering weights being 'uniform' in your kNN-classifier. Recall that they don't have to be! You can use other weighting-functions to make closer points having greater influence.