Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Zistite , či výpočet proces sa vykonáva požičiava seba k rekurzia , alebo nie . Je dôležité , že výpočtový proces v spôsobe môže byť znížená na opakované volanie sebe . Celým
Jedna z populárnych rekurzia výpočtov je proces , ktorým sa stanovuje faktoriál čísla . Faktoriál čísla N je výsledkom násobenia všetky čísla od 1 do N sám . Napríklad pomocou priameho násobenia :
faktoriál ( 3 ) = 3 * 2 * 1 = 6
Avšak , rovnaký výsledok sa získa pri pohľade rekurzívne :
faktoriál ( 3 ) = 3 * faktoriál ( 2 ) = 3 * 2 * faktoriál ( 1 ) = 3 * 2 * 1 = 6 celým
Všimnite si , že každá nasledujúca krok sa vzťahuje k rovnakému procesu , ale jednoduchšie povedané . celým
2
deklarovať metódu , Java , ktorá by sa vykonávať rekurzívne výpočet . Metóda má zvyčajne aspoň modifikátor , návratový typ , názvy metód a zodpovedajúci zoznam parametrov . Názov metódy zvyčajne začína s malým slovným slová . Napríklad , nasledujúci riadok definuje metódu nazvanú " skutočnosť ( ) " , ktorá prijíma celú číselnú hodnotu n a vráti jeho faktoriál :
int skutočnosť ( int n) { }
3
Uistite sa , že v tele rekurzívne metódy , výpočet sa vykonáva volania do seba . Uistite sa , že je stav ukončenie rekurzívneho volanie rovnako , inak metóda bude fungovať na dobu neurčitú bez zastavenia . Napríklad , nasledujúci riadok počíta Factoria určitého čísla n postupným volaním sa vykonať rovnaký výpočet s jednoduchším hodnotou n-1 .
Int skutočnosť ( int n) {
int vysledok ;
if (n == 1 ) return 1 ;
výsledok = skutočnosť (n - 1 ) * n ;
return vysledok ;
} celým
n - 1 je rovný 1 , je vrátená hodnota 1. To je stav ukončenie rekurzívneho výpočtu .
4
Zavolajte rekurzívne metódu ju otestovať . Napríklad , nasledujúci riadok volá metódu " skutočnosť ( ) " , zatiaľ čo odovzdaním hodnotu 3 pre tlač na konzole :
System.out.println ( " Faktoriál 3 je " + f.fact ( 3 ) ) ;
Uistite sa , že správa " Faktoriál 3 je 6 " sa vytlačí na obrazovke
.