Wie begründet man die Anwendung der Sortieralgorithmen auf gegebene Beispiele?

2 Antworten

Okay, schauen wir doch mal, bei 1 sind es 10 zu sortierende Werte, da möchte man einen Algorithmus, der in-place arbeitet und interativ ist.

Bei 2 möchte man Zahlen sortieren, es sind sehr viele (aber kleine) Zahlen. DCS ist hier linear in der Problemgröße, die Zahlen sind auch zu klein, als daß sich ein Radix-Exchange lohnen könnte.

3 Stell sich IMHO ähnlich wie 1 dar, warum hier BubbleSort ggü. Selectionsort verwendet wurde, keien Ahznung, die Stabilität spielt heir keien Rolle.

Bei 4. Insertion Sort macht genau das, er steckt neue Werte an die richtige Position in den bereits sortierten, d.h. ich muß nicht immer neu sortieren, sondern kann explizit nur die wenigen neu hinzugekommenen an ihre Position stopft. (D.h. Insertion Sort basiert im Endeffekt auf sortiertem Einfügen.

Bei 5: Mergesort ist schnell und kann im Gegensatz zu Quicksort sehr leicht auch mit Bändern oder sonstigen externen Speichern arbeiten.

Sagen wir mal so, wenn du dir die Funktionsweise der Algorithmen anschaust, sind sie alle für einen bestimmen Fall optimiert und zwar, wie die zu sortierenden Informationen vorliegen. Sind es Buchstaben, Zahlen, können sie zunächst gruppiert werden, wie viel Inhalt ist zu sortieren, kann man Parallelitäten nutzen, etc ... Je nach dem ist der eine Algorithmus schneller als der andere, weil er weniger Schritte benötigt

Schau dir mal folgendes Video an: https://youtu.be/kPRA0W1kECg

Woher ich das weiß:Studium / Ausbildung – Softwareentwickler mit 10 Jahren Berufserfahrung 💾
LaraMara111 
Fragesteller
 15.02.2019, 15:15

Hey.

Das Video kenne ich, nur bringt es mir gerade nicht sehr viel :=)

LG
Lara

1