Hallo zusammen,
ich habe eine kleine Frage zu Mergesort.
Der Algorithmus teil ja mein Array in zwei Teile. Was ist, wenn mein Array aber eine ungerade Anzahl an Elementen hat? Also z.B.: T R F H Z
Laut Code wird die Mitte wie folgt gebildet:
Wenn lo = 0 und hi = 4 wie in meinem Beispiel, müsste er also nach dem F teilen, richtig?
Bei Wikipedia ist aber ein Beispiel, bei dem er das "übrige" Element in die zweite Hälfte tut. Was mache ich falsch?
Hier der Link zum Wikipedia Bild:
http://upload.wikimedia.org/wikipedia/de/9/99/Mergesort_example.png
Gruß!!
ich habe eine kleine Frage zu Mergesort.
Der Algorithmus teil ja mein Array in zwei Teile. Was ist, wenn mein Array aber eine ungerade Anzahl an Elementen hat? Also z.B.: T R F H Z
Laut Code wird die Mitte wie folgt gebildet:
Java:
int mitte = (lo + (hi-lo)/2);
Wenn lo = 0 und hi = 4 wie in meinem Beispiel, müsste er also nach dem F teilen, richtig?
Bei Wikipedia ist aber ein Beispiel, bei dem er das "übrige" Element in die zweite Hälfte tut. Was mache ich falsch?
Hier der Link zum Wikipedia Bild:
http://upload.wikimedia.org/wikipedia/de/9/99/Mergesort_example.png
Gruß!!