Als «recursion» getaggte Fragen

Bei Fragen zur Rekursion die Praxis, eine Methode oder Funktion aus sich heraus aufzurufen.

3
Wie viele sind zu viele verschachtelte Funktionsaufrufe?
Zitiert von MSDN über StackOverflowException : Die Ausnahme, die ausgelöst wird, wenn der Ausführungsstapel überläuft, weil er zu viele verschachtelte Methodenaufrufe enthält. Too manyist hier ziemlich vage. Woher weiß ich, wenn zu viele wirklich zu viele sind? Tausende Funktionsaufrufe? Millionen? Ich gehe davon aus, dass es in irgendeiner Weise mit …


4
Wenn es keine Gesamtbetriebskosten gibt, wann müssen Sie sich Sorgen machen, den Stapel zu sprengen?
Jedes Mal, wenn über eine neue Programmiersprache diskutiert wird, die auf die JVM abzielt, werden unvermeidlich Dinge gesagt wie: "Die JVM unterstützt keine Tail-Call-Optimierung, daher sage ich viele explodierende Stacks voraus." Es gibt Tausende von Variationen zu diesem Thema. Jetzt weiß ich, dass einige Sprachen, wie zum Beispiel Clojure, ein …

2
Grund für die return-Anweisung beim rekursiven Funktionsaufruf
Ich hatte nur einen Zweifel im Kopf. Die folgende Unterroutine (zum Beispiel zum Suchen eines Elements in einer Liste) hat am Ende eine return-Anweisung: list *search_list(list *l, item_type x) { if (l == NULL) return(NULL); if (l->item == x) return(l); else return( search_list(l->next, x) ); } Ich kann die Bedeutung …

9
Ressourcen zur Verbesserung Ihres Rekursionsverständnisses? [geschlossen]
Aus heutiger Sicht passt diese Frage nicht zu unserem Q & A-Format. Wir erwarten, dass die Antworten durch Fakten, Referenzen oder Fachwissen gestützt werden, aber diese Frage wird wahrscheinlich Debatten, Argumente, Abstimmungen oder erweiterte Diskussionen hervorrufen. Wenn Sie der Meinung sind, dass diese Frage verbessert und möglicherweise erneut geöffnet werden …

2
Kann jemand das Konzept hinter Haskells Memoisierung erklären?
(Beachten Sie, dass ich die Frage hier stelle, da es sich eher um die konzeptionelle Mechanik als um ein Codierungsproblem handelt.) Ich arbeite an einem kleines Programm, das eine Folge von Fibonacci - Zahlen in seinem equasion Verwendung wurde, aber ich merkte , dass , wenn ich eine bestimmte Anzahl …

7
Kann eine rekursive Funktion Iterationen / Schleifen enthalten?
Ich habe mich mit rekursiven Funktionen befasst und anscheinend mit Funktionen, die sich selbst aufrufen und keine Iterationen / Schleifen verwenden (sonst wäre es keine rekursive Funktion). Beim Surfen im Internet für Beispiele (das 8-Königinnen-rekursive Problem) fand ich jedoch diese Funktion: private boolean placeQueen(int rows, int queens, int n) { …
12 java  recursion 

2
Grundlegendes zum Backtracking in C ++
Ich verstehe die Grundlagen von C ++ gut und verstehe auch, wie Rekursion funktioniert. Ich bin auf bestimmte Probleme gestoßen, wie das klassische Acht-Königinnen-Problem und das Lösen eines Sudoku mit Backtracking. Mir ist klar, dass ich in dieser Hinsicht ziemlich verloren bin. Ich kann mich anscheinend nicht mit dem Konzept …
12 c++  recursion 


3
Warum dauert die iterative Version länger?
Ich habe mir http://programming.lispdream.com/blog/2011/06/recursion-vs-iteration/ angesehen und festgestellt, dass bei seiner Implementierung der rekursiven und iterativen Implementierungen der Fakultätsfunktion die Iteration tatsächlich länger dauert gegeben n = 1.000. Ich kann nicht herausfinden warum (er erklärt es nicht, sagt aber, dass es eine Übung für den Leser ist). Entschuldigen Sie meine Neuheit …




6
Kann die Rekursion parallel erfolgen? Wäre das sinnvoll?
Angenommen, ich verwende ein einfaches rekursives Algo für Fibonacci, das wie folgt ausgeführt wird: fib(5) -> fib(4)+fib(3) | | fib(3)+fib(2)| fib(2)+fib(1) und so weiter Die Ausführung erfolgt weiterhin sequentiell. Wie würde ich dies stattdessen so codieren, dass fib(4)und fib(3)durch Berechnen von 2 separaten Threads berechnet werden, dann werden in fib(4)und …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.