Übungsaufgaben

Aufgabe21

Aufgabe21

by PEter Neuner -
Number of replies: 2

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);

}
}
In reply to PEter Neuner

Re: Aufgabe21

by Bernhard Hopfenmüller -
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.

In reply to PEter Neuner

Re: Aufgabe21

by Dominik Köppl -
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.