736 Begriffe aus IT, Netzwerk, Sicherheit und Programmierung: erst kurz erklärt, dann ausführlicher. Suche nach einem Wort oder wähle einen Buchstaben.
3 Treffer
Das Verfahren funktioniert nur bei reinen Funktionen (Pure Functions), die bei gleicher Eingabe immer dasselbe zurückgeben. Den Speicher bildet meist eine Hashmap. Memoization macht die rekursive Fibonacci-Berechnung von exponentieller auf lineare Laufzeit schneller.
Verwandt: Dynamische Programmierung · Hashmap (Dictionary) · Pure Function (reine Funktion) · Lazy Evaluation (verzögerte Auswertung) · Recursion (Rekursion) · Speicherleck (Memory Leak)
Ganzer Artikel im Wiki →Sie lohnt sich, wenn ein Problem optimale Teilstrukturen hat und dieselben Teilprobleme mehrfach auftreten. Statt exponentiell viele Fälle durchzuprobieren, füllt man eine Tabelle von kleinen zu großen Teilproblemen (bottom-up) oder merkt sich Zwischenergebnisse in einer rekursiven Lösung (Memoization, top-down).
Verwandt: Memoization · Algorithms (Algorithmen) · Big-O-Notation · Graph (Datenstruktur) · Mergesort · Recursion (Rekursion)
Ganzer Artikel im Wiki →Reine Funktionen sind leicht zu verstehen, zu testen und zu parallelisieren, weil ihr Ergebnis nur von den Argumenten abhängt. Ergebnisse lassen sich zwischenspeichern (Memoization), und der Compiler darf sie umsortieren oder wegoptimieren. Sie sind das Rückgrat der funktionalen Programmierung.
Verwandt: Higher-Order-Funktion (Funktion höherer Ordnung) · Unveränderlichkeit (Immutability) · Memoization · Lazy Evaluation (verzögerte Auswertung) · Unit-Test (Modultest)
Ganzer Artikel im Wiki →