Jaka jest najszybsza funkcja czynnikowa w JavaScript

Jaka jest najszybsza funkcja czynnikowa w JavaScript
W JavaScript czynnik reprezentuje produkt wszystkich dodatnich liczb całkowitych mniejszych lub równych określonej liczbie. Funkcję czynnikową można obliczyć w JavaScript za pomocą metod rekurencyjnych i iteracyjnych. W matematyce czynniki odgrywają kluczową rolę w wielu scenariuszach, takich jak liczenie liczby sposobów ustalenia „N„Różne obiekty w sekwencję i tak dalej.

Ten samouczek opisuje najszybszy sposób znalezienia czynnika w JavaScript.

Najszybsza/zoptymalizowana funkcja czynnikowa w JavaScript

Istnieją następujące sposoby znalezienia czynnika w JavaScript:

  • Za pomocą iteracji
  • Za pomocą rekurencji

Metoda 1: Znajdź czynnik za pomocą iteracji

Użyj "Iteracja„Metoda znalezienia czynnika w JavaScript. Ta funkcja używa „Do”Pętla do iteracji przez liczby w zakresie od 1 do N i pomnoża wynik przez każdą liczbę w zakresie. Jest bardziej wydajny niż rekurencja, ponieważ pozwala uniknąć kosztów wielokrotnego wywoływania funkcji i zapobiega przepełnieniu stosu, jeśli liczba jest zbyt duża.

Przykład

Zdefiniuj funkcję „silnia”, Który znajduje czynnik danej liczby za pomocą„Do„Pętla, która będzie iterowana przez numer 1 do N i pomnoża wynik według każdej liczby w zakresie:

FunkctionFactorial (numer)
Niech fakt = 1;
for (var i = liczba; i> 1; i--)
fakt *= i;

Fakt zwrotu;

Oblicz czynnik „7”, Wywołując funkcję:

czynnik (7);

Wyjście

Metoda 2: Znajdź czynnik za pomocą rekurencji

Możesz określić czynnik za pomocą „Rekurencja" metoda. Rekurencja to podejście programowe, w którym funkcja rozwiązuje problem, wywołując sam, bezpośrednio lub pośrednio. Rekurencja jest często stosowana przy rozwiązywaniu problemów, które można podzielić na mniejsze, powiązane podprobaty.

Przykład

Zdefiniuj funkcję rekurencyjną, która wzywa się do rozwiązania problemu:

FunkctionFactorial (numer)
if (liczba <0)
powrót-1;
elseif (liczba == 0)
return1;
w przeciwnym razie
return (liczba * factorial (liczba - 1));

W powyższym następującym kodzie:

  • Najpierw zdefiniuj funkcję zwaną „silnia”To zajmuje liczbę jako parametr.
  • Sprawdź, czy liczba nie jest ujemna, powinna być większa niż 0.
  • W tym celu, jeśli podana liczba jest mniejsza niż „0”, Co oznacza liczbę ujemną, a następnie zwróć„-1”, A jeśli to„ 0 ”, zwróć„1".
  • Jeśli liczba jest większa niż zero, to ponownie wywołaj funkcję factorali () ponownie pomijając niższą liczbę niż podana liczba.

Teraz wywołaj funkcję, aby obliczyć czynnik liczby „7”:

czynnik (7);

Wyjście wyświetla czynnik liczby „7". Obliczenie czynnika trwające wymaga więcej czasu ze względu na koszty ogólne wywołań funkcyjnych, dlatego nie jest to najlepsze i najszybsze podejście do znalezienia czynnika liczby:

Opracowaliśmy wszystkie niezbędne instrukcje istotne dla funkcji czynnikowej w JavaScript.

Wniosek

„„Rekurencyjny" I "Wielokrotny„Metody są wykorzystywane do znalezienia czynnika. Najszybsza/zoptymalizowana funkcja czynnikowa jest metodą iteracyjną. Powodem jest to, że za każdym razem, gdy wywołuje funkcja rekurencyjna, używa niewielkiej ilości pamięci do przechowywania bieżącego stanu i użytych zmiennych. Natomiast metoda iteracyjna wykorzystuje prostą pętlę i nie wymaga dodatkowej pamięci do przechowywania stanu funkcji. W tym samouczku opisaliśmy najszybszy sposób określenia czynnika w JavaScript.