Są chwile, w których użycie rekurencji jest lepsze niż użycie pętli, i czasy, w których użycie pętli jest lepsze niż użycie rekurencji. Wybór „właściwego” pozwala zaoszczędzić zasoby i / lub spowodować zmniejszenie liczby wierszy kodu. Czy istnieją przypadki, w których zadanie można wykonać tylko przy użyciu rekurencji, a nie pętli?
Obecnie pracuję nad projektem Ruby on Rails , który pokazuje listę obrazów. Niezbędnym elementem tego projektu jest to, że pokazuje on nowe posty w czasie rzeczywistym bez konieczności odświeżania strony internetowej. Po pewnym czasie natknąłem się na niektóre rozwiązania i usługi JavaScript, takie jak PubNub; jednak żadne z dostarczonych rozwiązań …
To dość konceptualne pytanie, ale miałem nadzieję, że uda mi się uzyskać w tym zakresie kilka dobrych rad. Wiele programowania, które wykonuję, to tablice ( NumPy ); Często muszę dopasowywać elementy w co najmniej dwóch tablicach o różnych rozmiarach, a pierwszą rzeczą, do której się wybieram, jest pętla for lub, …
Większość czasu podczas pisania pętli zwykle piszę złe warunki brzegowe (np .: zły wynik) lub moje założenia dotyczące zakończenia pętli są błędne (np. Nieskończenie działająca pętla). Mimo że moje założenia były prawidłowe po kilku próbach i błędach, ale byłem zbyt sfrustrowany z powodu braku poprawnego modelu obliczeniowego w mojej głowie. …
while (1) { if (1+1==2) { print "Yes, you paid attention in Preschool!"; } else { print "Wait... I thought 1+1=2"; } } Jako programista wszyscy musimy bardzo często używać pętli . Wiemy to. Zastanawiałem się, kto pomyślał o tym, żeby mieć pętle? W jakim języku wprowadzono pętle? Jaka była …
W wielu językach (szeroka lista, od C do JavaScript): przecinki ,oddzielne argumenty (np. func(a, b, c)), natomiast średniki ;oddzielne instrukcje sekwencyjne (np instruction1; instruction2; instruction3.). Dlaczego więc odwzorowanie odwrócono w tych samych językach dla pętli : for ( init1, init2; condition; inc1, inc2 ) { instruction1; instruction2; } zamiast (co …
Czasami potrzebuję pętli, które wymagają takiej przerwy: for(int i=0;i<array.length;i++){ //some other code if(condition){ break; } } Czuję się nieswojo z pisania if(condition){ break; } ponieważ zużywa 3 linie kodu. Odkryłem, że pętlę można przepisać jako: ↓ for(int i=0;i<array.length && !condition;i++){ //some other code } Moje pytanie brzmi: czy dobrą praktyką …
Zastanawiałem się, czy pętla while jest z natury rekurencją? Myślę, że dzieje się tak, ponieważ pętla while może być postrzegana jako funkcja, która wywołuje się na końcu. Jeśli nie jest to rekurencja, to jaka jest różnica?
Mój wykładowca wspominał dziś, że możliwe jest „etykietowanie” pętli w Javie, aby można było się do nich odwoływać w przypadku pętli zagnieżdżonych. Sprawdziłem więc tę funkcję, ponieważ nie wiedziałem o niej, a w wielu miejscach, w których ta funkcja została wyjaśniona, pojawiło się ostrzeżenie, zniechęcające zagnieżdżone pętle. Naprawdę nie rozumiem …
Po prostu ciekawy. Najbardziej, jakie kiedykolwiek miałem, to pętla for w pętli for, ponieważ po przeczytaniu tego z Linusa Torvaldsa: Tabulatory mają 8 znaków, a zatem wcięcia również mają 8 znaków. Istnieją ruchy heretyckie, które próbują zagłębić wcięcia 4 (lub nawet 2!) Znaków, i to jest podobne do próby zdefiniowania …
Problem ten koncentruje się głównie na algorytmie, być może czymś abstrakcyjnym i bardziej akademickim. Przykład oferuje myśl, chcę ogólny sposób, więc przykład został użyty tylko w celu wyraźniejszego wyjaśnienia twoich myśli. Ogólnie mówiąc, pętla może być przekształcona w rekurencyjną. na przykład: for(int i=1;i<=100;++i){sum+=i;} Jego powiązanym rekurencyjnym jest: int GetTotal(int number) …
Jest to najpopularniejszy sposób (wydaje mi się) sprawdzania, czy wartość znajduje się w tablicy: for (int x : array) { if (x == value) return true; } return false; Jednak w książce, którą czytałem wiele lat temu, prawdopodobnie przez Wirtha lub Dijkstry, powiedziano, że ten styl jest lepszy (w porównaniu …
Nauczono mnie tego wyrażania i wzorców już dawno temu. Jasne, nazwa pochodzi od starych pomp, które musiały zostać napełnione wodą, zanim będą mogły pompować wodę, ale kogo to obchodzi? Mówimy tutaj o kodzie. Mile widziane są niektóre naprawdę dobre przykłady i wyjaśnienie tego, co osiąga wzór. Jak dziś postrzegany jest …
Zamknięte . To pytanie jest oparte na opiniach . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby można było na nie odpowiedzieć faktami i cytatami, edytując ten post . Zamknięte 3 lata temu . Wyjaśniłem moim uczniom, że testowanie równe nie jest wiarygodne dla zmiennych zmiennoprzecinkowych, ale …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.