Hallo !
Ich habe mir in langer Arbeit, den folgenden Code erstellt, bzw. modifiziert. Es ist ein Sortier Algorithmus, auf Basis von Bubblesort. Er sortiert ABSTEIGEND !
Das Problem ist, dass ich diesen Code so modifiziert brauche, dass ich die Werte die sortiert werden sollen, selber in der Eingabezeile eingebe. Also auf die Art:
java Bubblesort 4 3 5 6 [enter]
Hier mal der ursprüngliche Code
nun brauche ich ja, um selber die Zahlen eigeben zu können, etwas in der Art:
Nur weiß ich nicht wie ich diese Codes zusammenfüge .. habe einfach keinen Erfolg damit ...
bin schon am verzweifeln ...
Viele Grüße
Ich habe mir in langer Arbeit, den folgenden Code erstellt, bzw. modifiziert. Es ist ein Sortier Algorithmus, auf Basis von Bubblesort. Er sortiert ABSTEIGEND !
Das Problem ist, dass ich diesen Code so modifiziert brauche, dass ich die Werte die sortiert werden sollen, selber in der Eingabezeile eingebe. Also auf die Art:
java Bubblesort 4 3 5 6 [enter]
Hier mal der ursprüngliche Code
Code:
public class BubbleSort {
public static void sort(double[] array) {
// Wir nehmen erstmal an, dass das Array sortiert ist.
boolean sortiert = true;
do {
sortiert = true;
// Nun gehen wir das Array komplett durch...
for (int i = 1; i < array.length; i++) {
// und vergleichen jedes Element mit dem linken Nachbar,
// darum fängt die for-Schleife auch mit 1 an und nicht mit 0.
if (array[i - 1] < array[i]) {
// Sollte das linke Element kleiner sein als das rechte,
// so werden diese beiden vertauscht.
final double tmp = array[i - 1];
array[i - 1] = array[i];
array[i] = tmp;
// Und wir merken uns, dass das Array eben doch
// nicht sortiert war.
sortiert = false;
}
}
// Den obigen Code müssen wir nun so lange ausführen,
// bis keine Vertauschungen mehr nötig sind.
// Dies ist genau dann der Fall, wenn das array sortiert ist.
} while (!sortiert);
// Diese Methode braucht auch keinen Rückgabewert,
// da das übergebene Array modifiziert wird.
}
// nur zum Testen
public static void main(String[] args) {
double[] test = {52.90 , 654.3,654.5,654.4,2,35,12,5,7,9};
sort(test);
for (int i=0; i<test.length; i++) {
System.out.println(test[i]);
}
}
}
nun brauche ich ja, um selber die Zahlen eigeben zu können, etwas in der Art:
Code:
public static void main(String[] args) {
double[] d = new double[args.length];
for (int i = 0; i < args.length; i++) {
d[i] = Double.parseDouble(args[i]);
}
// ab hier mit double Array weiterarbeiten
}
Nur weiß ich nicht wie ich diese Codes zusammenfüge .. habe einfach keinen Erfolg damit ...
bin schon am verzweifeln ...
Viele Grüße