Arrays & Sotieralgorythmen !

Gramlyn

Grünschnabel

So, ich hab mich jetzt schon länger mit C++ beschäftigt :p und wollte mal wissen wie ihr so Arrays sotiert, welcher Algorythmus euerer meinung nach der beste ist und wie ihr diesen in euer Programm implementiert ! :) würd mir echt weiterhelfen ! ;-)
 
Zuletzt bearbeitet:
P.S.: Ein paar Algos die ich schon ausprobiert habe !

Sortieralgorithmen:

Binarytreesort
Bogosort
Bubblesort
Bucketsort
Cocktailsort
Combsort
Countingsort
Heapsort
Insertionsort
Introsort: Verbesserter Quicksort-Algorithmus, der auch im Worst Case eine Laufzeit von O(nlogn) hat.
Mergesort
(randomisiertes) Quicksort
Radixsort
Selectionsort
Shellsort
Smoothsort

Ich selbst find der Introsort ist der passendste für Array Sotierungen !
 
Komm eindeutig auf die jeweilige Stelle im Code an, würd ich sagen :) (soll es möglichst schnell gehen, oder möglichst speichersparend, oder beides, oder keins von beiden... etc.)
 
Es sollte schon möglichst schnell gehen ohne unnötigen speicher aufwand oder belastung :)

P.S.: was ist der std::sort( ); ?
 
Original geschrieben von Gramlyn
Es sollte schon möglichst schnell gehen ohne unnötigen speicher aufwand oder belastung :)
Beides geht aber leider nicht (immer), meist muss man einen Kompromiss machen. Manchmal braucht man eben unbedingt eine möglichst hohe Geschwindigkeit, wodurch eine hohe Speicherbelastung entsteht. Manchmal steht dieser Speicher aber nicht zur Verfügung, was dann wiederum auf Kosten der Geschwindigkeit geht.
 
Das nicht immer beide Möglichkeiten gleichzeitig gehen ist klar,allerdings hat mir unser C++ Guru gesagt es gäbe einen Algor. der sich der situation anpasst (speicher vorhanden,etc...) wo ich diesen aber herbekomme weiß ich nicht...

Deshalb geh ich mom auf den Introsort (Verbesserter Quicksort-Algorithmus, der auch im Worst Case eine Laufzeit von O(nlogn) hat).

:)
 
Ahso mk... dann versuch ichs mal mit dem , was der so bringt.... Wo würdest du den Sotieralgorythmus untergbringen um ein array zu sotieren ?

Danke schon mal im Vorraus ! :)
 
Zurück