Zu meiner Überraschung konnte ich keine Artikel zu diesem Thema finden - ich habe wahrscheinlich nach den falschen Stichwörtern gesucht.
Wir haben also eine Reihe von Dingen und eine Funktion für ihre Indizes. ist eine Permutation.
Wie ordnen wir das Array nach wobei Speicher und Laufzeit so nahe wie möglich an und ?
Gibt es zusätzliche Bedingungen, wenn diese Aufgabe einfacher wird? Wenn wir beispielsweise explizit wissen, dass eine Funktion die Umkehrung von ?
Ich kenne einen Algorithmus, der Zyklen folgt und einen Zyklus für jeden Index durchläuft, um zu prüfen, ob er der kleinste in seinem Zyklus ist, aber auch hier hat er die schlechteste -Laufzeit, obwohl er sich im Durchschnitt besser zu verhalten scheint ...