Zum Inhalt springen

Informatik · Klasse 11–13 · aktualisiert

Landau-Notation: O, Omega und Theta einfach erklärt

Du lernst O, Ω und Θ als obere, untere und enge Schranke, vereinfachst Kostenfunktionen und vergleichst Algorithmen.

0 von 13 Aufgaben gelöst

Landau-Notation: O, Omega und Theta einfach erklärt

Kurz gesagt

Die Landau-Notation beschreibt, wie die Schrittzahl eines Algorithmus bei sehr großen Eingaben wächst, ohne Konstanten. O ist eine obere, Ω eine untere und Θ eine enge Schranke. Bei einer Summe zählt nur der größere Summand: O(n³ + n² + 1) = O(n³).

Zwei Programme lösen dieselbe Aufgabe. Bei zehn Daten merkst du keinen Unterschied, bei sehr vielen Daten aber schon. Die Landau-Notation sagt dir, wie stark der Aufwand mit der Datenmenge wächst, egal auf welchem Computer das Programm läuft.

Deine Lernziele

Hake ab, was du schon kannst. Löst du alle Aufgaben eines Abschnitts, hakt Mela das Ziel für dich ab.

4 Abschnitte

Landau-Symbole beschreiben, wie eine Funktion für sehr große Eingaben wächst. Man nennt das asymptotisches Verhalten. In der Informatik geben sie ein Maß für die Anzahl der Elementarschritte (einfache Rechenschritte) in Abhängigkeit von der Größe n des Problems an. Konstanten spielen dabei keine Rolle.

Es gibt drei Symbole. O ist die obere Schranke: f wächst höchstens genauso schnell wie g. Ω ist in der Komplexitätstheorie die untere Schranke: f wächst mindestens genauso schnell wie g. Θ ist die enge Schranke: f wächst genauso schnell wie g. Θ bedeutet beides zugleich: f liegt in O(g) und in Ω(g).

Genauer: f(n) = O(g(n)) bedeutet f(n) ≤ c·g(n) für alle n ≥ n₀ und ein c > 0. Bei Ω steht ≥ statt ≤. Bei Θ liegt f(n) ab einem n₀ zwischen zwei Vielfachen von g(n), mit zwei positiven Konstanten c₁ und c₂. Außerdem gilt in der Komplexitätstheorie: f ∈ Ω(g) genau dann, wenn g ∈ O(f).

Eine Hilfe ist der Quotient f(n)/g(n) für wachsendes n. Strebt er gegen einen Wert kleiner als unendlich, gilt f = O(g). Strebt er gegen einen Wert größer als 0, gilt f = Ω(g). Strebt er gegen eine Konstante c mit c > 0, wächst f genauso schnell wie g.

Vorsicht bei der Schreibweise: f = O(g) ist keine Gleichung, sondern nur symbolisch gemeint. O(g) ist eine Menge von Funktionen, deshalb ist f(n) ∈ O(g(n)) formal korrekt. Aus f₁ = O(g) und f₂ = O(g) folgt nicht, dass f₁ und f₂ gleich sind. Das Symbol Ω hat in der Zahlentheorie eine andere Definition; hier gilt die aus der Komplexitätstheorie.

Definition

Θ (Theta)

f ∈ Θ(g) heißt: f wächst genauso schnell wie g. Es gilt sowohl f ∈ O(g) als auch f ∈ Ω(g).

SymbolSchrankef wächst … wie g
Oobere Schrankehöchstens genauso schnell
Ωuntere Schrankemindestens genauso schnell
Θenge Schrankegenauso schnell

Beispiel: Gilt 2ⁿ⁺¹ = O(2ⁿ)?

  1. 1Gesucht ist ein c mit 2ⁿ⁺¹ ≤ c·2ⁿ.
  2. 2Es ist 2ⁿ⁺¹ = 2·2ⁿ.
  3. 3Mit c = 2 gilt 2·2ⁿ ≤ 2·2ⁿ für alle n ≥ 0.
  4. 4Also gilt 2ⁿ⁺¹ = O(2ⁿ).

Teste dich

LeichtWelche Art von Schranke beschreibt Ω in der Komplexitätstheorie?
MittelFür eine Funktion f gilt f ∈ O(g) und f ∈ Ω(g). Was folgt daraus?

Alles auf einen Blick

Landau-Notation

  • Schranken

    O ist die obere, Ω die untere und Θ die enge Schranke. Θ bedeutet O und Ω zugleich.

  • Vereinfachen

    Bei einer Summe zählt nur der am schnellsten wachsende Summand, konstante Faktoren fallen weg.

  • Reihenfolge

    log(n), n, n·log(n), n², n³ wachsen in dieser Reihenfolge schneller.

  • Fall und Schranke

    Best, Average und Worst Case nennen die Eingabe. O, Ω und Θ nennen die Art der Schranke.

  • Vergleich

    Prüfe neben dem Wachstum die Vorbedingungen, etwa sortierte Daten bei der binären Suche.

Musteraufgabe · Schritt für Schritt

Insertionsort: Best und Worst Case mit Schranken (aus den Kostenfunktionen hergeleitet)

  1. 1Gegeben sind die Vergleiche bei n Elementen: Tbest(n) = n − 1 und Tworst(n) = 1 + 2 + … + (n − 1).
  2. 2Probe mit n = 10: Tbest = 9 und Tworst = 1 + 2 + … + 9 = 45.
  3. 3Die Summe ist n·(n−1)/2 = n²/2 − n/2. Für n = 10 ergibt das 50 − 5 = 45.
  4. 4Best Case: (n − 1)/n strebt gegen 1, also gegen eine Konstante c > 0. Tbest wächst genauso schnell wie n, also Tbest ∈ Θ(n).
  5. 5Worst Case: (n²/2 − n/2)/n² strebt gegen 1/2. Tworst wächst genauso schnell wie n², also Tworst ∈ Θ(n²).
  6. 6Fall und Schranke sind getrennt: Für beide Fälle kannst du auch eine obere Schranke nennen, O(n) für den Best Case und O(n²) für den Worst Case.

Fehler finden

Prüfe die Aussagen zum Quicksort In einer Zeile steckt ein Fehler. Tippe sie an.

Lückentext

Wähl in jeder Lücke das passende Wort und prüf dann deine Antworten.

Die Aussage „f wächst mindestens genauso schnell wie g“ gehört zum Symbol Ω und damit zur Schranke. Bei O(n³ + n² + 1) zählt nur der Summand, deshalb bleibt O(n³) übrig. Die binäre Suche setzt voraus, dass die Elemente im Array angeordnet sind.

Karteikasten

Erst selbst überlegen, dann umdrehen.

Übung mit Feedback

Abschluss-Check: Landau-Notation

LeichtDu sprichst einfach von der Zeitkomplexität eines Algorithmus und nennst keinen Fall. Welcher Fall ist meistens gemeint?
MittelEine Kostenfunktion lautet T(n) = 7·n·log(n) + 4·n. Welche enge Größenordnung hat sie?
SchwerDie Daten sind sortiert, liegen aber in einer einfachen verketteten Liste. Was gilt für die binäre Suche?

Weiterlesen in Informatik