Cooler Adblocker Abiunity kannst du auch ohne Adblocker werbefrei nutzen ;) Einfach registrieren und mehr als 10 Bedankungen sammeln!
 
Nifkel
Schüler | Niedersachsen
31.01.2010 um 11:02 Uhr
Servus mitanand =)

Wir behandeln im Unterricht derzeit die Komplexität von Sortieralgorithmen, sprich Bubble-, Heap-, Merger-, Insertion- und Selectionsort.
So genaz konnte ich mich mit dem Thema jedoch noch nicht anfreunden.

Die Algorithmen an sich sind klar, was es jedoch genau mit der Komplexität auf sich hat, kann mir jemand vielleicht nochmal in seinen Worten erklären ?

Würde mich über Beistand freuen Augenzwinkern
Liebe Grüße.
__________________

Blog Geschichte LK 2009/2010
NS Ideologie, Chinas Weg in die Moderne sowie Franzrev.
0
#53688
Melde dich an oder registriere dich, um zu kommentieren. AnmeldenRegistrieren
 
.lex
Freiwilliger Helfer | Niedersachsen
01.02.2010 um 23:18 Uhr
Komplexität eines Algorithmus ist quasi seine asymptotische Laufzeit - Das bedeutet: Wie viel "Aufwand" macht der Algorithmus bei großen Datenmengen.
Bei Sortieralgorithmen setzt sich die Komplexität/Laufzeit z.B. aus den Vergleichsoperationen (wenn vorhanden) zusammen:
Schauen wir uns z.B. Insertionsort an, so muss eine Liste von Vorne bis hinten durchlaufen werden und (im schlimmsten Fall) das neu hinzuzufügende Element ganz durch die bereits sortierte Teilliste schieben -> Realisierbar durch zwei verschachtelte Schleifen.
Also muss bei n Eingabewerten ungefähr n² Aufwand betrieben werden (Faktoren und Konstanten lässt man weg). Dies drückt man "informatisch" als O(n²) aus.
__________________

Alle Angaben ohne Gewähr ;-)
1
#53840
 
Alexius
Schüler | Niedersachsen
20.03.2010 um 17:10 Uhr
Grundsätzlich hilft erstmal: Schleifen und deren Verschachtelung genau angucken und dann für sehr hohe n-werte (von mir aus 1 000 000) überlegen wie sich das auf die Zeit auswirkt.

Bei den Sortierverfahren die wir kennengelernt haben ist es meines wissens im worst case immer O(n²) gewesen.
Zuletzt bearbeitet von Alexius am 20.03.2010 um 18:11 Uhr
0
#58262
 
Petra Pan
Freiwilliger Helfer | Niedersachsen
24.03.2010 um 11:17 Uhr
Bei der Komplexität handelt es sich meistens um eine worst-case Angabe. D.h. wir können garantieren, dass der Algorithmus nach einer bestimmten Zeit terminiert. Diese obere, asymptotische Schranke wird in der sog. O-Notation angegeben (http://de.wikipedia.org/wiki/O-Notation). Um diese Schranke zu berechnen werden Zuweisungen, arithmetische Operatoren etc. ignoriert, da sie immer eine konstante Zeit benötigen. Interessant sind vorerst nur die Schleifendurchläufe des Algorithmus. Als Beispiel Bubblesort: Er besteht aus zwei Schleifen. Die äußere Schleife wird (n-1) ausgeführt, die innere Schleife wird bei jeder Iteration (Schleifendurchlauf) um 1 verkürzt. Es ensteht also eine Laufzeit von n*(n-1+n-2...). Dies kann man als (n*(n-1))/2 zusammenfassen. Dadraus folgt die obere Schranke O(n²). Dies ist eine schlechte Laufzeit. Übrings: Vergleichbasierte Sortierverfahren haben immer mindestens eine O(n log n) Laufzeit als obere Schranke, schneller geht es nicht.
1
#59190
 
Nifkel
Schüler | Niedersachsen
24.03.2010 um 14:20 Uhr
Finds super, dass du hier gleich so einsteigst, danke auch dafür!!
Gerade das Info- Forum ist nicht so angeregt, wie z.B Physik smile
Da kommen helfende Hände genau richtig.
Kann man dich bei nem konkreten Problem auch über /pm oder email erreichen ?

Liebe Grüße,
Niklas.
__________________

Blog Geschichte LK 2009/2010
NS Ideologie, Chinas Weg in die Moderne sowie Franzrev.
0
#59290
Cooler Adblocker Abiunity kannst du auch ohne Adblocker werbefrei nutzen ;) Einfach registrieren und mehr als 10 Bedankungen sammeln!
x
BBCodes