Informatik Algorithmen – Dynamische Programmierung
Dynamische Programmierung ist ein Kernbestandteil jeder Algorithmen-Vorlesung und häufiger Prüfungsstoff. Nach dem Lernen dieser Karten kennst du die beiden Grundprinzipien (optimale Substruktur, überlappende Teilprobleme), beide Implementierungsarten (Top-Down mit Memoization, Bottom-Up mit Tabulation) und kannst klassische Probleme wie 0/1-Rucksack und LCS eigenständig modellieren und lösen.
Lernziele
Was du in dieser Lektion lernst
- Was sind die zwei Voraussetzungen für Dynamische Programmierung?
- Was ist der Unterschied zwischen Memoization und Tabulation?
- Wie lautet die Rekursionsformel für die Fibonacci-Folge mit DP?
- Wie definiert man den Zustand beim 0/1-Rucksackproblem?
Lerntipp
Zeichne für jedes DP-Problem zuerst den Rekursionsbaum auf Papier – du erkennst sofort überlappende Teilprobleme und leitest die Zustandsdefinition sowie die Rekursionsformel fehlerfrei ab.
Hinweis: Der Inhalt dieser Seite wurde mit einem KI-Modell erzeugt und nicht von Fachmenschen geprüft. Nutze die Karten als Lernhilfe und gleiche medizinische oder rechtliche Aussagen mit deinen Unterlagen ab.
Karteikarten
Alle 15 Lernkarten
Tippe auf eine Karte, um die Antwort aufzudecken
Häufige Fragen
Die wichtigsten Fragen zu Informatik Algorithmen – Dynamische Programmierung
- Was sind die zwei Voraussetzungen für Dynamische Programmierung?
- Optimale Substruktur (optimale Lösung enthält optimale Teillösungen) und überlappende Teilprobleme (gleiche Teilprobleme werden mehrfach berechnet).
- Was ist der Unterschied zwischen Memoization und Tabulation?
- Memoization ist Top-Down: rekursiver Aufruf mit Cache. Tabulation ist Bottom-Up: iteratives Befüllen einer Tabelle ohne Rekursion.
- Wie lautet die Rekursionsformel für die Fibonacci-Folge mit DP?
- F(n) = F(n-1) + F(n-2) mit Basisfällen F(0)=0, F(1)=1. Ohne DP exponentiell, mit DP linear in Zeit und Speicher.
- Wie definiert man den Zustand beim 0/1-Rucksackproblem?
- dp[i][w] = maximaler Wert mit den ersten i Gegenständen bei Gewichtslimit w. Übergang: nehmen (Wert + dp[i-1][w-gewicht]) oder weglassen (dp[i-1][w]).
- Was ist der Unterschied zwischen 0/1-Rucksack und unendlichem Rucksack?
- 0/1: jeder Gegenstand maximal einmal → Iteration über Gewichte absteigend. Unendlich: beliebig oft → Iteration aufsteigend, gleicher Index bleibt verfügbar.
Warum Atrio?
- FSRS-5 Spaced Repetition
- Der Algorithmus plant jede Wiederholung anhand deiner eigenen Lernhistorie und stellt Karten kurz bevor du sie vergisst – das reduziert unnötige Wiederholungen.
- KI-Import
- Notizen, Skripte und PDFs in Sekunden in Lernkarten verwandeln – genau wie diese Seite automatisch entsteht.
- Prüfungsplanung
- Termine hinterlegen und Atrio berechnet rückwärts, wie viele Karten du pro Tag lernen musst – ohne Stress.
Interaktiv lernen
Diese 15 Karten jetzt interaktiv in der Atrio-App lernen
Atrio zeigt dir jede Karte dann, wenn du sie fast vergessen hättest – damit bleibt genau das hängen, was du lernst.
Starter-Plan kostenlos – keine Kreditkarte erforderlich.