@Test public void computeRange_primitive() { ApproximateSort_F64 alg = new ApproximateSort_F64(12); double[] data = random(-5,10,4,200); double min = Double.MAX_VALUE; double max = -Double.MAX_VALUE; for( int i = 4; i < data.length; i++ ) { if( data[i] < min ) min = data[i]; if( data[i] > max ) max = data[i]; } alg.computeRange(data,4,200); assertEquals(min,alg.minValue,1e-8); assertEquals(max,alg.maxValue,1e-8); }
@Test public void computeRange_object() { ApproximateSort_F64 alg = new ApproximateSort_F64(12); double[] data = random(-5,10,4,200); SortableParameter_F64[] objs = convert(data); double min = Double.MAX_VALUE; double max = -Double.MAX_VALUE; for( int i = 4; i < data.length; i++ ) { if( data[i] < min ) min = data[i]; if( data[i] > max ) max = data[i]; } alg.computeRange(objs,4,200); assertEquals(min,alg.minValue,1e-8); assertEquals(max,alg.maxValue,1e-8); }