Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Zistite , či rekurzia je vhodný pre vaše potreby . Musíte byť schopní vyjadriť výpočtovej proces podieľajú na riešenie vášho problému , pokiaľ ide o opakované volanie do seba . Populárna príklad je faktoriál výpočet , ktorý je výsledkom násobenia rad čísel až do " N " a môže byť vyjadrený ako rekurzívne výpočet .
2
Rozhodnite sa , ktoré môžete použiť rozdeľ a panuj stratégie na riešenie vášho problému . Napríklad metóda " Quicksort " , ktorý sa opiera o rekurzívne výpočet počas procesu triedenia . Podobným spôsobom , musíte byť schopní rozdeliť problém na menšie kúsky a spracovávať ich rekurzívne .
3
Vytvorte metódu , Java , ktoré budete volať rekurzívne . Uistite sa , že vaša metóda Java obsahuje všetky potrebné šesť zložiek , a to modifikátor , návratový typ , názov metódy , zoznam parametrov , zoznam výnimiek a telo metódy .
Napríklad nasledujúci riadok definuje metódu nazvanú " Quicksort ( ) " , ktorý prijíma rad mohol byť triedený spolu s ľavým a pravým indexov :
void Quicksort ( int arr [ ] , int ľavý , pravý vpravo ) { }
4
uistite sa , že ste zahrnuli volania do seba vo vnútri metódy , ktorá obsahuje rekurzívne výpočet . Napríklad , vo vnútri " Quicksort ( ) " metódou , nasledujúce volania do viac " Quicksort ( ) " metódy možno nájsť :
int index = oddiel ( pole , vľavo , vpravo ) ,
if ( vľavo < index - 1 )
Quicksort ( pole , vľavo , index - 1 ) ;
if ( index < vpravo )
Quicksort ( pole , index , doprava ) ;
Parametre odovzdanej následné rekurzívne volanie musí byť menšia , než tie predchádzajúce . To je základným prvkom stratégie rozdeľuj a panuj .
5
Otestujte volanie funkcie rekurzívne . Môžete definovať triedu , ktorá preverí vašu rekurzia a " main ( ) " metódu vnútri to zavolať rekurzívne funkcie a uistite sa , že funguje správne . Napríklad :
trieda Rekurzia {
public static void main ( String args [ ] ) { }
}
Copyright © počítačové znalosti Všetky práva vyhradené