Suchergebnisse für Anfrage "tail-recursion"
Schwanzrekursionsoptimierung für JavaScript?
Ich entschuldige mich bei allen für die vagen früheren Versionen. Jemand hat beschlossen, Mitleid mit dem neuen Mädchen zu haben und mir beim Umschreiben dieser Frage zu helfen - hier ist ein Update, das hoffentlich die Dinge klären wird (und ...
Erklärung der Listen: Fold-Funktion
Ich lerne immer mehr über Erlang und habe in letzter Zeit ein Problem. Ich lese überfoldl(Fun, Acc0, List) -> Acc1 Funktion. Ich habe das Tutorial learnyousomeerlang.com verwendet und es gab ein Beispiel (Beispiel zum Umgekehrten Polnischen ...
Tail-Rekursion in C ++
Kann mir jemand eine einfache Schwanzrekursivfunktion in C ++ zeigen? Warum ist Schwanzrekursion besser, wenn es überhaupt so ist? Was für andere Arten der Rekursion gibt es neben der Schwanzrekursion?
Wie breche ich in Scala aus einer Schleife aus?
Wie breche ich eine Schleife aus? var largest=0 for(i<-999 to 1 by -1) { for (j<-i to 1 by -1) { val product=i*j if (largest>product) // I want to break out here else if(product.toString.equals(product.toString.reverse)) largest=largest ...
(Wie) kann ich diese monadische Bindung rekursiv machen?
Ich habe diese Monade namens Desync - [<AutoOpen>] module DesyncModule = /// The Desync monad. Allows the user to define in a sequential style an operation that spans /// across a bounded number of events. Span is bounded because I've yet to ...
C # -Kompilierung mit rekursiver Schwanzoptimierung?
Basiert auf der Fülle von Stackoverflow, habe ich immer wieder Antworten darauf erhalten, ob die rekursive Schwanzoptimierung speziell für C # -Code durchgeführt wird. Einige der Fragen schienen über @ zu spreche Spekulation der Optimierung in ...
Clojure: Vermeiden eines Stapelüberlaufs im Sieb von Erathosthen?
Hier ist meine Implementierung von Sieve of Erathosthene in Clojure (basierend auf der SICP-Lektion für Streams): (defn nats-from [n] (iterate inc n)) (defn divide? [p q] (zero? (rem q p))) (defn sieve [stream] (lazy-seq (cons (first stream) ...
Schwanzrekursion findet nicht statt
Ich benutzeg++ (Ubuntu 4.8.2-19ubuntu1) 4.8.2 in einem C ++ - Projekt. Ich habe eine Funktion geschrieben, die das macht: template<typename T, T (*funct)(int) > multiset<T> Foo(const multiset<T>& bar, int iterations) { if (iterations == 0) ...
Was ist die Tail Call-Optimierung?
Sehr einfach, was ist Tail-Call-Optimierung? Kann jemand ein paar kleine Code-Schnipsel zeigen, wo sie angewendet werden könnten, und wo nicht, mit einer Erklärung, warum?
Recursive Funktionen in Berechnungsausdrücken
Einigen Hintergrund zuerst. Ich lerne gerade ein paar Dinge über monadische Parser-Kombinatoren. Während ich versuchte, die 'chainl1'-Funktion von @ zu übertragdieses Papie [http://www.cs.nott.ac.uk/~gmh/monparsing.pdf] (S. 16-17), ich habe diese ...