Rešeno: javascript gcd

Glavna težava z algoritmom JavaScript GCD je, da lahko izračun traja dolgo.

function gcd(a, b) {
    if (b == 0) {
        return a;
    } else {
        return gcd(b, a % b);
    }
}

To je rekurzivna funkcija za izračun največjega skupnega delitelja dveh števil z uporabo Evklidovega algoritma.

Če je b enak 0, potem je GCD enak a. V nasprotnem primeru je GCD enak GCD od b in ostanku a deljeno z b.

Največji skupni delilec

Največji skupni delitelj (GCD) dveh celih števil je največje celo število, ki deli obe celi števili brez ostanka. Na primer, GCD 12 in 24 je 6.

Matematične knjižnice

Obstaja nekaj knjižnic, ki lahko pomagajo pri matematiki v JavaScriptu. Ena je Math.js, ki ponuja številne osnovne matematične funkcije in objekte. Drugi je numeral.js, ki ponuja obsežen nabor numeričnih funkcij in predmetov.

Rekurzija v JavaScriptu

Rekurzija je programski konstrukt, ki omogoča funkciji, da pokliče samo sebe. Z drugimi besedami, omogoča funkciji, da se sklicuje nase v lastni definiciji. Rekurzija se lahko uporablja za reševanje problemov ali doseganje določenih ciljev.

Ena pogosta uporaba rekurzije je v algoritmih, ki rešujejo težave z uporabo zank. Na primer, Fibonaccijevo zaporedje je mogoče rešiti z uporabo rekurzivnega algoritma. Algoritem se začne tako, da prvič izračuna Fibonaccijevo število, nato pa drugič izračuna Fibonaccijevo število na podlagi rezultata prvega izračuna. Ta postopek se ponavlja, dokler zaporedje ne doseže vnaprej določene meje ali dokler ne pride do napake.

Rekurzivne funkcije se lahko uporabljajo tudi za reševanje problemov, ki vključujejo sezname in polja. Recimo, da želite najti vsa soda števila med 2 in 100. Za to bi lahko uporabili zanko, vendar bi trajalo kar nekaj časa. Namesto tega bi lahko uporabili rekurzijo za izračun vseh sodih števil med 2 in 100 z uporabo enega klica funkcije.

Podobni objav:

1 misel na “Rešeno: javascript gcd”

Pustite komentar