Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hi,
ich habe 30 Datenpaare (x,y) zwischen denen kein funktionaler Zusammenhang vorhanden ist. Ich möchte eine Funktion in Java implementieren, die mir anhand des x Wertes einen y-Wert zurückgibt. Dazu soll der y-Wert des nächstgelegenen x Wert verwendet werden.
Wie realisiert man das am besten? Switch-Case oder if -elseIf wäre wohl die Brute-Force Methode?
Hi,
ich habe 30 Datenpaare (x,y) zwischen denen kein funktionaler Zusammenhang vorhanden ist. Ich möchte eine Funktion in Java implementieren, die mir anhand des x Wertes einen y-Wert zurückgibt. Dazu soll der y-Wert des nächstgelegenen x Wert verwendet werden.
Wie realisiert man das am besten? Switch-Case oder if -elseIf wäre wohl die Brute-Force Methode?
Naja also nicht ganz Dazu müsstest du einen Switch oder If Else Block erstellen, welcher Anhand von deinen Eingaben (z.B. y1(12)) in dein Array geht und sich den Y-Wert holt.
Des nächstgelegenen X-Wertes? Also die Differenz wäre dann wichtig?
Dann wäre das Vorgehen, dass man für jeden Wert den Abstand berechnet und dann den kleinsten Abstand nimmt.
Was muss genommen werden, wenn der Abstand zu zwei Werten gleich ist? Also wenn ich in das Bild schaue, hast Du z.B. 26 und 28. Jetzt wird die 27 abgefragt: Abstand zu 26 und 28 ist jeweils 1. Welcher Wert muss genommen werden oder ist das egal?
Generell würde ich schauen, ob ich pro row eine Entity machen könnte. Da kann man dann Methoden schön kapseln, die dazu gehören. Und dann hast Du einfache Logiken wie:
- Für jede Entity schaust Du:
-> Was ist der Abstand zu dem gegebenen x? Ist dieser kleiner als der bisher gemerkte Minimum oder ist das Minimum noch nicht gesetzt?
--> Ja: Minimum auf errechneten Abstand setzen und Entity merken.
-> Weiter mit nächster Entity
Da deine Werte in der Excel-Datei (nach x) sortiert zu seinen scheinen, würde ich sie auch so in eine geeignete Dtenstruktur (Array, List) einlesen, dass sie sortiert bleiben.
Dann ist es relativ einfach, herauszufinden, zwischen welchen zwei Werten der gesuchte x-Wert liegt. Nur für diese beiden Werte musst du dann den Abstand berechnen (und eine Regel haben, was passiert, wenn der Abstand zu beiden Werten gleich groß ist).