Was ist die eleganteste Art der Bubble-Sortierung in F #?
AKTUALISIEREN
Wie in einer der Antworten darauf hingewiesen wurde, ist die Blasensortierung in einer funktionalen Sprache zunächst nicht effizient. Ein humoristisch-zynischer Kommentator wies auch darauf hin, dass die Blasensortierung nur dann sinnvoll ist, wenn die Liste klein ist und ohnehin fast sortiert ist.
Allerdings bin ich gespannt, wie eine clevere Bubble-Sortierung in F # geschrieben werden kann, da ich in der Vergangenheit Bubble-Sortierungen in C #, C ++ und Java EE gemacht habe und seit ich ein F # -Neuling bin .
Die Verwendung von bubble sort in einer funktionalen Sprache ist nicht sehr effizient, da die Implementierung die Liste mehrmals umkehren muss (und dies kann nicht wirklich effizient für unveränderbare Listen implementiert werden).
Wie auch immer, das Beispiel von Erlang kann wie folgt in F # geschrieben werden:
%Vor%Auf der anderen Seite können Sie denselben Algorithmus mithilfe von veränderbaren Arrays implementieren. Dies wird effizienter und in F # können Sie auch mit Arrays arbeiten, wenn Sie möchten. Die folgende Funktion erstellt eine Kopie des Arrays und sortiert sie.
%Vor%Tomas