q = ...
dmax = ...
knn = ...
Dists = []
foreach tuple t in R {
d = dist(t.val, q)
insert (t.oid,d) into Dists
}
n = 0; Results = []
foreach (i,d) in Dists {
if (dmax > 0 && d > dmax) break;
if (knn > 0 && ++n > knn) break;
insert (i,d) into Results
}
return Results;
|