@Override public int[] assign(T[] data) { final int[] argmins = new int[data.length]; final float[] mins = new float[data.length]; nn.searchNN(data, argmins, mins); return argmins; }
@Override public void assignDistance(T[] data, int[] indices, float[] distances) { nn.searchNN(data, indices, distances); }
@Override public IntFloatPair assignDistance(T data) { final int[] index = new int[1]; final float[] distance = new float[1]; @SuppressWarnings("unchecked") final T[] arr = (T[]) Array.newInstance(clz, 1); arr[0] = data; nn.searchNN(arr, index, distance); return new IntFloatPair(index[0], distance[0]); }