Bei der Berechnung ist Memoisierung eine Optimierungstechnik, die in erster Linie dazu dient, Computerprogramme zu beschleunigen, indem Funktionsaufrufe es vermeiden, die Berechnung von Ergebnissen für zuvor verarbeitete Eingaben zu wiederholen.
In einer objektorientierten Sprache, wenn ich die Ergebnisse einer Funktion für eine bekannte Lebensdauer cache / memoisieren möchte, folge ich im Allgemeinen diesem Muster:
Erstellen Sie eine neue Klasse
Fügen Sie der Klasse einen Datenme...
24.02.2012, 20:46
Im Vortrag von Advanced Swift von der WWDC 2014 gab der Sprecher dieses Beispiel eines Funktions-Memos mit Generics:
%Vor%
Ich habe Probleme, meinen Kopf um die Lebensdauer dieses memo var zu wickeln. Hat jeder Aufruf der Funktion fibona...
20.06.2014, 15:02
In der aktuellen Übungsaufgabe des Functional Programming-Kurses, den ich mache, müssen wir eine Memo-Version einer bestimmten Funktion machen. Um die Memoisierung zu erklären, wird folgendes Beispiel gegeben:
%Vor%
Aber ich verstehe nicht g...
21.03.2013, 09:53
Wenn ich in Clojure eine Funktion memoize, nenne sie f und rufe sie in einem Argument a auf.
Wenn a ein großer Lazy-Wert ist, gibt memoize einen Wert basierend auf dem Thunk-Vergleich zurück, anstatt die Auswertung von a zu erzwin...
01.02.2012, 00:27
Ich versuche, einen Decorator für eine Instanzmethode einer Klasse zu erstellen, die das Ergebnis protokolliert. (Dies wurde schon millionenmal gemacht.) Allerdings hätte ich gerne die Möglichkeit, den Memo-Cache jederzeit zurückzusetzen (zB wen...
13.12.2010, 17:38
Ich mache mir Gedanken darüber, ob und wann ein polymorpher "globaler" Klassenwert freigegeben / gespeichert wird, insbesondere über Modulgrenzen hinweg. Ich habe dies gelesen und dies , aber sie scheinen nicht ganz meine Situation widerzus...
18.05.2015, 21:12
Gibt es einen Konsens darüber, wie Memoization vermieden werden kann, die Fehler aufgrund eines veränderbaren Zustands verursacht?
In diesem Beispiel wurde der Zustand eines zwischengespeicherten Ergebnisses mutiert und gab daher beim zweiten...
13.01.2011, 01:37
Ich habe diesen Artikel Ein großes Interview-Problem zurückgezogen , der Autor kam mit einem work break Problem und gab drei Lösungen. Der effiziente Algorithmus verwendet den memoization -Algorithmus und der Autor sagt, dass die Zeitkomp...
22.01.2014, 03:17
Ich habe ein Programm bekommen, das verlangt, dass ich die Anzahl der vorherigen Zustände für eine Matrix zähle.
Die gegebene Matrix ist eine boolesche Matrix. Ich werde 1 für true und 0 für false verwenden, um das Programm zu e...
29.01.2017, 16:20
Offensichtlich liefert eine schnelle Suche eine Million Implementierungen und Varianten des Memoization Decorators in Python. Ich bin jedoch an einem Geschmack interessiert, den ich nicht finden konnte. Ich möchte es so haben, dass der Cache von...
22.02.2012, 04:56