Techniques for efficient k-Nearest Neighbor searching in non-ordered discrete and hybrid data spaces