Boah, was Text!
(Ich hab übrigens die Lösung in meinen älteren Beitrag reineditiert)

Zitat Zitat von Kelven
Hm ja, von oben anfangen sollte auch gehen, so genau kenne ich mich mit der Effizienz von Sortieralgorithmen nicht aus. Bei der kleinen Menge Datein beim Makern macht es aber wohl keinen Unterschied.
Leider geht es von "unten" garnicht. Nochmal zum Stau-Beispiel: Platz 1, 2,3, 5 und 6 sind besetzt. Platz 4 frei. Auto 6 kann nicht fahren. Auto 5 geht an Stelle 4. Auto 3 bis 1 sind korrekt vorne.
Aber jetzt müsste Auto 6 fahren, denn Platz 5 ist frei geworden. Seine Fork ist aber schon vorbei, bleibt also stehen. Andersrum geht das Auffahren auch nur dann, wenn man nach dem Weiterfahren auch die nächste Lücke beachtet: Auto 1, 2 und 3 bleiben stehen. Auto 5 schließt auf, fährt aber nicht weiter, denn Platz 3 ist voll. Auto 6 fährt auf Platz 5. Da er weiterfahren könnte, muss man auch Platz 4 überprüfen. Weil dieser frei ist, muss er auch dorthin fahren.

Insgesamt also nicht so einfach wies am Anfang scheint.

Zitat Zitat von Kelven
Mit meinen neugewonnenen Makerkenntnissen hab ich jetzt nochmal versucht den Algorithmus zu überarbeiten. Der Faulheit halber schreibe ich das aber wieder in Pseudocode.
Jo, das mit den Pointern sieht richtig aus. Nur:
wenn 0 < Variable23 < Variable24 wird der Schlalter nicht aktiviert. Bei teils vorsortierten Feldern kann das durchaus passieren.
Außerdem muss beim Tauschen die eine Variable zwischengespeichert werden, weil sie sonst überschrieben wird. Die erste Variable erhält den Wert der zweiten. Aber welchen Wert bekommt die zweite Variable, den Wert der ersten gibt es ja nicht mehr!?
Auch wird der Sortiervorgang leider nicht funktionieren. Wenn zum Beispiel Zahl sechs (10 Einheiten groß) und Zahl fünf (18 Einheiten groß) gleich am Anfang sortiert werden, wird eine von beiden als die kleinere definiert (10 Einheiten groß) und deshalb nachher nicht mehr beachtet auch wenn Zahl zwei viel kleiner ist. So sieht es zumindest meinem Wissensstand nach aus.

@übelster Held
..kann sein. Sorry, hab da kein Durchblick.