
public class LinearScanDistanceKNNQuery<O,D extends Distance<D>> extends AbstractDistanceKNNQuery<O,D> implements LinearScanQuery
distanceQueryrelationHINT_BULK, HINT_EXACT, HINT_HEAVY_USE, HINT_NO_CACHE, HINT_OPTIMIZED_ONLY, HINT_SINGLE| Constructor and Description |
|---|
LinearScanDistanceKNNQuery(DistanceQuery<O,D> distanceQuery)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
List<KNNList<D>> |
getKNNForBulkDBIDs(ArrayDBIDs ids,
int k)
Bulk query method
|
KNNList<D> |
getKNNForDBID(DBIDRef id,
int k)
Get the k nearest neighbors for a particular id.
|
KNNList<D> |
getKNNForObject(O obj,
int k)
Get the k nearest neighbors for a particular id.
|
private void |
linearScanBatchKNN(ArrayDBIDs ids,
List<KNNHeap<D>> heaps)
Linear batch knn for arbitrary distance functions.
|
getRelationpublic LinearScanDistanceKNNQuery(DistanceQuery<O,D> distanceQuery)
distanceQuery - Distance function to useprivate void linearScanBatchKNN(ArrayDBIDs ids, List<KNNHeap<D>> heaps)
ids - DBIDs to processheaps - Heaps to store the results inpublic KNNList<D> getKNNForDBID(DBIDRef id, int k)
KNNQuerygetKNNForDBID in interface KNNQuery<O,D extends Distance<D>>getKNNForDBID in class AbstractDistanceKNNQuery<O,D extends Distance<D>>id - query object IDk - Number of neighbors requestedpublic List<KNNList<D>> getKNNForBulkDBIDs(ArrayDBIDs ids, int k)
KNNQuerygetKNNForBulkDBIDs in interface KNNQuery<O,D extends Distance<D>>getKNNForBulkDBIDs in class AbstractDistanceKNNQuery<O,D extends Distance<D>>ids - query object IDsk - Number of neighbors requestedpublic KNNList<D> getKNNForObject(O obj, int k)
KNNQuerygetKNNForObject in interface KNNQuery<O,D extends Distance<D>>getKNNForObject in class AbstractDistanceKNNQuery<O,D extends Distance<D>>obj - Query objectk - Number of neighbors requested