Pytania otagowane jako recursion

Rekursja to rodzaj wywołania funkcji, w którym funkcja wywołuje samą siebie. Takie funkcje są również nazywane funkcjami rekurencyjnymi. Rekursja strukturalna to metoda rozwiązywania problemu, w której rozwiązanie problemu zależy od rozwiązań mniejszych wystąpień tego samego problemu.


6
Czy Python optymalizuje rekurencję ogona?
Mam następujący fragment kodu, który nie działa z następującym błędem: RuntimeError: przekroczona maksymalna głębokość rekurencji Próbowałem przepisać to, aby umożliwić optymalizację rekurencji ogona (TCO). Uważam, że ten kod powinien był się udać, gdyby miało miejsce TCO. def trisum(n, csum): if n == 0: return csum else: return trisum(n - 1, …

7
Czym dokładnie jest funkcja ponownego wysłania?
Większość z tych czasów , definicja reentrance jest cytat z Wikipedii : Program komputerowy lub procedurę określa się jako ponowne wysłanie, jeśli można bezpiecznie wywołać ją ponownie przed zakończeniem poprzedniego wywołania (tzn. Można bezpiecznie wykonać jednocześnie). Aby ponownie wysłać, program komputerowy lub procedurę: Nie może zawierać żadnych statycznych (ani globalnych) …




9
Rekurencja w dyrektywach kątowych
Istnieje kilka popularnych rekurencyjnych wytycznych dotyczących kątowych pytań i odpowiedzi, które sprowadzają się do jednego z następujących rozwiązań: ręcznie przyrostowo „kompiluj” HTML na podstawie stanu zakresu środowiska wykonawczego przykład 1 [ stackoverflow ] przykład 2 [ kątowa strona jsfiddles ] w ogóle nie używaj dyrektywy, ale szablon <script>, który odnosi …

30
Rekurencyjna sekwencja Fibonacciego w Javie
Proszę wyjaśnić ten prosty kod: public int fibonacci(int n) { if(n == 0) return 0; else if(n == 1) return 1; else return fibonacci(n - 1) + fibonacci(n - 2); } Jestem zdezorientowany z ostatnią linią, zwłaszcza, że ​​jeśli na przykład n = 5, to zostanie wywołany fibonacci (4) + …

7
Implikacje foldr vs. foldl (lub foldl ')
Po pierwsze, Real World Haskell , który czytam, mówi, żeby nigdy nie używać foldli zamiast tego używać foldl'. Więc ufam temu. Ale jestem zamglona, gdy w użyciu foldrw porównaniu foldl'. Chociaż widzę strukturę ich działania inaczej ułożoną przede mną, jestem zbyt głupi, by zrozumieć, kiedy „co jest lepsze”. Wydaje mi …

15
Jak wyszukiwać według klucza => wartości w wielowymiarowej tablicy w PHP
Czy istnieje szybki sposób na uzyskanie wszystkich podtablic, w przypadku których znaleziono parę klucz-wartość w tablicy wielowymiarowej? Nie mogę powiedzieć, jak głęboka będzie tablica. Prosta tablica przykładowa: $arr = array(0 => array(id=>1,name=>"cat 1"), 1 => array(id=>2,name=>"cat 2"), 2 => array(id=>3,name=>"cat 1") ); Kiedy wyszukuję klucz = nazwa i wartość = …
147 php  arrays  search  recursion 

22
Rozwiązanie problemu „Błąd krytyczny: osiągnięto maksymalny poziom zagnieżdżenia funkcji„ 100 ”, przerywanie!” w PHP
Zrobiłem funkcję, która wyszukuje wszystkie adresy URL w pliku html i powtarza ten sam proces dla każdej treści html połączonej z wykrytymi adresami URL. Funkcja jest rekurencyjna i może trwać bez końca. Jednak ograniczyłem rekursję, ustawiając zmienną globalną, która powoduje zatrzymanie rekursji po 100 rekurencjach. Jednak php zwraca ten błąd: …
137 recursion  xdebug  php 

9
definicja struktury odniesienia do samego siebie?
Nie pisałem C od bardzo dawna, więc nie jestem pewien, jak mam robić tego rodzaju rekurencyjne rzeczy ... Chciałbym, aby każda komórka zawierała inną komórkę, ale pojawia się błąd w wiersze „pola„ dziecko ”mają niepełny typ”. Co tam? typedef struct Cell { int isParent; Cell child; } Cell;
134 c  recursion  struct  typedef 


7
Zagnieżdżony defaultdict o defaultdict
Czy istnieje sposób, aby defaultdict był również domyślny dla defaultdict? (tj. rekurencyjny słownik default z poziomu nieskończonego?) Chcę móc: x = defaultdict(...stuff...) x[0][1][0] {} Więc mogę to zrobić x = defaultdict(defaultdict), ale to tylko drugi poziom: x[0] {} x[0][0] KeyError: 0 Istnieją przepisy, które mogą to zrobić. Ale czy można …

30
Co to jest rekurencja i kiedy należy jej używać?
Zamknięte . To pytanie i odpowiedzi na nie są zablokowane, ponieważ pytanie jest niezwiązane z tematem, ale ma znaczenie historyczne. Obecnie nie przyjmuje nowych odpowiedzi ani interakcji. Jednym z tematów, który wydaje się regularnie pojawiać się na listach mailingowych i w dyskusjach online, są zalety (lub ich brak) zdobycia tytułu …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.