Was ist eine Sortieranimation?
Sortieren ist ein Prozeß, der - wie alle Prozesse - von, in und mit der Zeit lebt und in bzw. mit der Zeit fortschreitet. Animieren stammt von lat. „animatio“ für „Beförderung“, „Belebung“, aber auch „Lebewesen“, „Geschöpf“. Animieren heißt demnach, zum Leben zu erwecken, beweglich zu machen (s. auch angelsächsisch „animal“ für „Tier“).
Man kann Sortieralgorithmen auch ohne bzw. nur mit graphisch veranschaulichter Zeitkomponente bzw. Zeitdimension statisch visualisieren, so z.B. diese Visualisierung des Heapsorts:
Hier noch mehr davon. Auch für jemanden mit Vorkenntnissen dürfte es damit oft schwierig, auf den ersten Blick nahezu unmöglich sein, den dahinterstehenden Sortieralgorithmus zu erkennen, die Informationsmenge reicht entweder nicht aus oder ist nicht menschengerecht genug aufbereitet. Letztlich zeigt eine solche Visualisierung, die eher ein Stilleben ist, ähnlich viel oder eher wenig, wie eine Bewegung in einem Weg-Zeit-Diagramm nicht erkennbar ist, es bleibt demnach vieles von ihrem Wesen verborgen; deshalb die dynamische Visualisierung inkl. echter Zeitkomponente über die Animation.
Nichtdestoweniger, wie eine Weg-Zeit-Diagramm dennoch immerhin die Bewegungsform erkennen läßt, kann auch eine geschickte statische Visualisierung erstaunlich viel Struktur offenbaren und den Sortieralgorithmus preisgeben, so da und erst recht und sogar ästhetisch dort.
Animationen sind nicht nur unterhaltsam und „Futter für die Augen“, sondern können zu einem echten Erkenntnisgewinn führen. So sind z.B. eigentlich rekursive, aber iterativ umgestaltete Algorithmen nicht von ihren rekursiven Pendants zu unterscheiden, was darauf schließen läßt, das unterschiedliche Algorithmen zu einem gleichen Prozeß (ihres Ablaufens, ihres Ausführens) führen. Auch ist damit z.B. erkennbar, daß Stupidsort ein Insertionsort ist, obwohl der Algorithmus das keinesfalls erkennen läßt, jedenfalls nicht auf den ersten Blick. So konnte z.B. das im Internet teilweise kursierende simultane Bubblesort in Wirklichkeit als (simultanes) Oetsort erkannt werden, weshalb bisher kein simultanes Bubblesort implementiert wurde.