wenn ich das richtig verstanden habe (und davon gehe ich aus) kapiert der Threadsteller "nicht enmal" seinen code und du erwartest er checkt deinen?
Hmm, gidf.de wenn du wissen willst was der hamstersimulator ist... Die code wird im hamstersimulator höchstwahrscheinlich nicht funktionieren...
Mir hilft anderer Code immer. Ich erarbeite mir das dann indem ich ein wenig Spicke. Rein von der Schreibweise ist da nicht viel anders...
Aber gut: Hier mal ein Erklärungsversuch mit Beispiel von ein paar Zahlen.
Okay: Folgende Situation:
Die Zahlen 10 8 6 2 1 4 3 9 7 5 sollen aufsteigend sortiert werden.
|
Java Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
Der Ansatz mit der FOR-Schleife war schon korrekt.
Hier der Programmablauf:
WENN wert[x] GRÖSSER [wert[x+1] DANN WERTE TAUSCHEN
int tmp = wert[x];
wert[x] = wert[x+1];
wert[x+1] = tmp
um die Werte austauschen zu können musst du dir einen Zahl in einer zweiten Variable merken.
Was passiert? Hier mit den ersten paar Zahlen ein Beispiel:
IST 10 > 8
int tmp = 10
wert[x] = wert[x+1] (8)
wert[x+1] = tmp (10)
>> 8 10 6 2 1 4 3 9 7 5
IST 10 > 6
int tmp = 10
wert[x] = wert[x+1] (6)
wert[x+1] = tmp (10)
>> 8 6 10 2 1 4 3 9 7 5
Und so geht das weiter. Wenn die FOR-Schleife durchgelaufen ist würde das ganze so aussehen:
>> 8 6 2 1 4 3 9 7 5 10
Um jetzt weiter zu sortieren muss die FOR-Schleife erneut gestartet werden und dann geht es wieder los mit:
IST 8 > 6
int tmp = 8
wert[x] = wert[x+1] (6)
wert[+1] = tmp
Wenn z.B. so ein Fall eintritt
IST 3 > 6
wird gar nichts gemacht. Dadurch wandert die kleinste Zahl automatisch an die erste Stelle. Die größte Zahl wandert an die letzte Stelle.
|
Ich hoffe es ist nicht zu unübersichtlich...
BTW:
@n0x-f0x: Ich bin kein Freund von Posts in denen lediglich gidf.de angeführt wird. Ausgenommen es bietet sich wirklich an weil massive Layer 8 Probleme vorliegen.
Im Kontext war hier aber eher die Rede von: Ich hab eine Lösung in Java. Eventuell bringt dich das ja weiter.
Du kannst die Lösung ja gerne erarbeiten... Da der Schüler aber Defizite hat währe es nicht hilfreich im die Lösung zu geben um sein Defizit so nur zu vergrößern. Zeugnisse sind schließlich dazu da, zu zeigen wer gut und wer nicht so gut ist und wo stärken sind (zumindest sollten Zeugnisse dazu da sein).
Gruß,
E