Servus Community,
Ich bin gerade am Lernen für eine Prüfung und versuche mich an einem alten Prüfungsbeispiel und komme nicht weiter.
Es handelt sich um eine Klasse mit einem parameterlosen Konstruktor und ht jediglich die Methode:
public double findeBestesIntervall(double [] punkte, double weite)
Die Methode soll einen Wert zurückgeben in dem am meisten Punkte des Arrays im Intervall (sprich in der weite enthalten sind).
Soweit so gut. Hier meine Ansätze:
Also als erstes sortiere ich meine Array und überschreibe sie in eine ArrayList weil ich mir dann leichter tue. Danach gehe ich mit einer for-Schleife den ersten Wert durch und erhöhe in der 2ten for-Schleife i um 1 damit nicht die Distanz zum selben Punkt genommen wird.
Jetzt hänge ich an der if-Bedingung. Ich müsste einen lokalen Zähler einfügen und vergleichen nach wievielen Punkten das Intervall überschritten wird.
Ich wäre euch sehr dankbar wenn ihr mir einen Denkanstoß geben könntet.
Wünsche euch noch einen schönen Abend
und vielen Dank im voraus El Hadji
Ich bin gerade am Lernen für eine Prüfung und versuche mich an einem alten Prüfungsbeispiel und komme nicht weiter.
Es handelt sich um eine Klasse mit einem parameterlosen Konstruktor und ht jediglich die Methode:
public double findeBestesIntervall(double [] punkte, double weite)
Die Methode soll einen Wert zurückgeben in dem am meisten Punkte des Arrays im Intervall (sprich in der weite enthalten sind).
Soweit so gut. Hier meine Ansätze:
Code:
import java.util.*;
public class DenseIntervals
{
public DenseIntervals()
{
}
public double findeBestesIntervall(Double [] punkte, double weite)
{
Arrays.sort(punkte);
List <Double> neu = Arrays.asList(punkte);
ArrayList<Double> sortiert = new ArrayList<Double>(neu);
for(int i = 0; i < sortiert.size(); i++)
{
int distanz = 0;
int count = 1;
for (int j = i+1; j < sortiert.size(); j++)
{
}
}
}
}
Also als erstes sortiere ich meine Array und überschreibe sie in eine ArrayList weil ich mir dann leichter tue. Danach gehe ich mit einer for-Schleife den ersten Wert durch und erhöhe in der 2ten for-Schleife i um 1 damit nicht die Distanz zum selben Punkt genommen wird.
Jetzt hänge ich an der if-Bedingung. Ich müsste einen lokalen Zähler einfügen und vergleichen nach wievielen Punkten das Intervall überschritten wird.
Ich wäre euch sehr dankbar wenn ihr mir einen Denkanstoß geben könntet.
Wünsche euch noch einen schönen Abend
und vielen Dank im voraus El Hadji