Komplexität Flashcards

1
Q

Einflussfaktoren für den Zeit- und Speicherplatzbedarf eines Algorithmus

A
  1. Anzahl und Größe der Eingabedaten (“Problemgröße”) [#Knoten]
  2. Komplexität des Algorithmus/ der Aufgabe [for-Schleife n-mal durchlaufen]
  3. Eigenschaften der zur Ausführung eingesetzten Rechenanlage (z.B. Schnelligkeit, Befehlssatz)

⇒ bei Art der Rechenanlage häufig abstrakte Maschinen zur Komplexitätsberechnung

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Komplexität

A
  • wie viel Zeit
  • wie viel Speicherplatz benötigt ein Algo zur Ausführung für eine gegebene Problemgröße

⇒ unabhängig von Problemgröße/Rechenanlage

⇒ möglichst effiziente Alogrithmen, also von geringer Komplexität

⇒ hier immer Zeitkomplexität

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Idealisierende Annahmen

A
  • Jede Elementaroperation (Zuweisung, Addition, Subtraktion, Multiplikation, Vergleichen etc.) = 1 Rechenschritt
  • Aufwändige Operationen (z.B. Matrizenmultiplikation) nicht verfügbar bzw. durch einfachere Operationen zu realisieren.
  • Einheitliche Größe der betrachteten Daten, Darstellung in jeweils einer Speicherzelle
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Elementaroperationen (ELOP)

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

typische Komplexitätsfunktionen (aufsteigend)

A
  • O(log₂ n): Logarithmische Komplexität
  • O(n): Lineare Komplexität
  • O(n log₂ n): Leicht überlineare Komplexität
  • O(n²): Quadratische Komplexität
  • O(n³): Kubische Komplexität
  • O(2^n): Exponentielle Komplexität
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

„Groß-Oh-Notation“

A

beschreibt Wachstum von Funktionen für große n bzw. das Verhalten von n -> unendlich.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Große/kleine Problemauspräungen

A

Große Problemauspräungen

  • Aussagen meist relativ genau zutreffend
  • Konstante Summanden unwichtig
  • Höchste Potenz entscheidend

Kleine Problemauspräungen

  • Konstante Faktoren mit hoher Bedeutung
  • Aussage der Groß-Oh-Notation i.a. sehr unpräzise
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Komplexität - Mengen

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Bekannte Problemklassen - Sortierverfahren

A

Einfüge Sort

  • O(n²)

Quicksort

  • Tmax O(n²)
  • Tavg O(n log₂ n)

Heapsort

  • Tmax = Tavg O(n log₂ n)

Algorithmen, die “Vergleichen & Vertauschen”

  • Tmax = Tavg O(n log₂ n)

Shakersort

  • Tmin O(n)
  • Tmax O(n2)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Bekannte Problemklassen

A

DFS/BFS: O(|E| + |N|), da jeder Knoten/Kante höchst. 1x in jeder Richtung durchlaufen

Statische DS: Direkter Zugriff auf Feldelemente: O(1)

Hamiltonscher Zyklus: O(m!) [komplexer als Eulerkreisproblem]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly