Hallo, ich habe folgenden Code für die Selection Sort Aufgabe aber er funktioniert nicht. Wieso nciht? da sind 2 forschleifen die das doch regeln sollten, die erste sucht das Minimum die 2. streicht es raus und fängt von vorne an oder nicht ?
public class Aufgabe21 {
public static void sortiere (int[]array){
for (int i=0;i<array.length;i++)
System.out.print(array[i]);
int min = Integer.MIN_VALUE;
for (int i=0;i<array.length;i++){
min =array[0];
for (int j=i+1;j<array.length-i;j++){
min = array[j+1];
System.out.println("");
System.out.print(array[j]);
}}
}
public static void main (String []args){
int[] test ={ 4, 2, 8, 5,9, 1,3,6,0,7 };
sortiere(test);
}
}
mein code sieht ähnlich aus, aber ich zusätzlich
hab noch ne if bedingung um zu sehn, ob ein element kleiner is, als beispieslweise sein nachbar element.
hab noch ne if bedingung um zu sehn, ob ein element kleiner is, als beispieslweise sein nachbar element.
Als erstes brauchst du in deiner sortiere-Funktion einen Swap, also eine Vertauschung von Werten.
D.h. irgendwo muss einmal ein "array[i] = ..." stehen.
Du kannst auch mal überdenken, mit der min-Variable nicht den Wert des kleinsten Elements abzuspeichern, sondern den Index des kleinsten Elements. Kommst du damit zum Ziel?
Vielleicht kommentierst du jeden Schritt, dann kann ich dir noch bessere Tipps geben.
D.h. irgendwo muss einmal ein "array[i] = ..." stehen.
Du kannst auch mal überdenken, mit der min-Variable nicht den Wert des kleinsten Elements abzuspeichern, sondern den Index des kleinsten Elements. Kommst du damit zum Ziel?
Vielleicht kommentierst du jeden Schritt, dann kann ich dir noch bessere Tipps geben.