13SS_6b_PG1_Algorithmen_Datenstrukturen_Suchen_Sortieren_Stud_01_21.pdf
13SS_6b_PG1_Algorithmen_Datenstrukturen_Suchen_Sortieren_Stud_01_21.pdf 13SS_6b_PG1_Algorithmen_Datenstrukturen_Suchen_Sortieren_Stud_01_21.pdf
Beispiele zur Schätzung der Zeitkomplexität FB Informatik Prof. Dr. R.Nitsch Laufzeit Anweisung Zeitkomplexität T(n) Big-O Typische Algorithmen x=x+1; for (int i=1; i
Weitere Beispiele für O-Notation der Algorithmuslaufzeit FB Informatik Prof. Dr. R.Nitsch Notation Bedeutung Anschauliche Erklärung Beispiele für Laufzeiten T(n) є O(1) ist konstant überschreitet einen konstanten Wert nicht (unabhängig vom Wert des Arguments). Nachschlagen des x-ten Elementes in einem Feld. T(n) є O(log n) wächst logarithmisch wächst ca. um einen konstanten Betrag, wenn sich das Argument verzehnfacht. Binäre Suche im sortierten Feld mit n Einträgen T(n) є O(√n) wächst wie die Wurzelfunktion wächst ungefähr auf das Doppelte, wenn sich das Argument vervierfacht naiver Primzahltest mittels Teilen durch jede Zahl ≤n T(n) є O(n) wächst linear wächst ungefähr auf das Doppelte, wenn sich das Argument verdoppelt. Suche im unsortierten Feld mit Einträgen (Bsp. Lineare Suche) T(n) є O(nlog n) hat super-lineares Wachstum Fortgeschrittenere Algorithmen zum Sortieren von Zahlen Mergesort, Heapsort T(n) є O(n 2 ) wächst quadratisch wächst ungefähr auf das Vierfache, wenn sich das Argument verdoppelt Einfache Algorithmen zum Sortieren von Zahlen Selectionsort T(n) є O(n k ) wächst polynomiell wächst ungefähr auf das Doppelte, wenn sich das Argument um eins erhöht Zahlenschloßprojekt T(n)=O(n 3 ) T(n) є O(n!) wächst faktoriell wächst ungefähr um das n-fache, wenn sich das Argument um eins erhöht. Problem des Handlungsreisenden 20.06.2013 10
- Seite 1 und 2: FB Informatik Prof. Dr. R.Nitsch Al
- Seite 3 und 4: Such-Algorithmen - Binäre Suche FB
- Seite 5 und 6: Aufwand von Algorithmen - Abstrakti
- Seite 7: Komplexität der binären Suche FB
- Seite 11 und 12: Sortieren FB Informatik Prof. Dr. R
- Seite 13 und 14: Sortierverfahren - Klassifizierung
- Seite 15 und 16: Implementierung von Bubble-Sort FB
- Seite 17 und 18: Sortieren durch Auswahl (selection
- Seite 19 und 20: Sortieren durch Einfügen (insertio
Weitere Beispiele für O-Notation der Algorithmuslaufzeit<br />
FB Informatik<br />
Prof. Dr. R.Nitsch<br />
Notation Bedeutung Anschauliche Erklärung Beispiele für Laufzeiten<br />
T(n) є O(1)<br />
ist konstant<br />
überschreitet einen konstanten Wert nicht<br />
(unabhängig vom Wert des Arguments).<br />
Nachschlagen des x-ten Elementes in einem<br />
Feld.<br />
T(n) є O(log n)<br />
wächst<br />
logarithmisch<br />
wächst ca. um einen konstanten Betrag,<br />
wenn sich das Argument verzehnfacht.<br />
Binäre Suche im sortierten Feld mit n<br />
Einträgen<br />
T(n) є O(√n)<br />
wächst wie die<br />
Wurzelfunktion<br />
wächst ungefähr auf das Doppelte, wenn<br />
sich das Argument vervierfacht<br />
naiver Primzahltest mittels Teilen durch<br />
jede Zahl ≤n<br />
T(n) є O(n)<br />
wächst linear<br />
wächst ungefähr auf das Doppelte, wenn<br />
sich das Argument verdoppelt.<br />
Suche im unsortierten Feld mit Einträgen<br />
(Bsp. Lineare Suche)<br />
T(n) є O(nlog n)<br />
hat super-lineares<br />
Wachstum<br />
Fortgeschrittenere <strong>Algorithmen</strong> zum<br />
<strong>Sortieren</strong> von Zahlen Mergesort, Heapsort<br />
T(n) є O(n 2 )<br />
wächst<br />
quadratisch<br />
wächst ungefähr auf das Vierfache, wenn<br />
sich das Argument verdoppelt<br />
Einfache <strong>Algorithmen</strong> zum <strong>Sortieren</strong> von<br />
Zahlen Selectionsort<br />
T(n) є O(n k )<br />
wächst<br />
polynomiell<br />
wächst ungefähr auf das Doppelte, wenn<br />
sich das Argument um eins erhöht<br />
Zahlenschloßprojekt T(n)=O(n 3 )<br />
T(n) є O(n!)<br />
wächst faktoriell<br />
wächst ungefähr um das n-fache, wenn<br />
sich das Argument um eins erhöht.<br />
Problem des Handlungsreisenden<br />
20.06.2<strong>01</strong>3 10