private void tryToSave(KDNode node, double[] target) {
		if(node == null){
			return;
		}
		double distance = distance(target, node.values);
		if(resultKNN.size() == k  && resultKNN.maximum().distance < distance){ 
			return;
		}
		KNNPoint point = new KNNPoint(node.values, distance);
		
		if(resultKNN.contains(point)){
			return;
		}
		
		resultKNN.add(point);
		
		if(resultKNN.size() > k){
			resultKNN.popMaximum();
		}
	}