Implementations of k-furthest neighbours
algorithms in Java.
Let U
a collection of items, Q
a collection of query items and k
a positive integer. The k-furthest items
problem asks to find for every item in Q
its k-furthest items, which belong in U
.
- Brute Force (BruteForce.java): It is exact and of brute force.
- Guaranteed Drusilla Select (GuaranteedDrusilla.java): It is approximate, but with a guaranteed solution quality provided by the user.
- Query Dependent (QueryDependent.java): It is approximate and works only for k=1
- Double Priority Queue 1-Dimensional (DoublePQ1D.java): It is exact and works only on 1-dimensional data.
- Sorting 1-Dimensional (Sort1D.java): It is exact or optional guaranteed approximate and works only on 1-dimensional data.
This project has an experimental theme, I would not recommend using it in production.
15+ (I'm pretty sure it can compile with a lower version too)