En rekursiv funksjon kaller seg som en del av beregningsorientert prosessen . Selv rekursjon kan være vanskelig å forstå i starten , en grundig forståelse av hvordan det fungerer kan forbedre din evne som en Java-programmerer . Rekursjon er spesielt nyttig i algoritmisk utvikling fordi mange begreper i matematikk og informatikk naturlig egner seg å bli uttrykt rekursivt . Det er derfor det er viktig for et Java- programmerer å vite hvordan man skal inkludere rekursjon i sitt program når det er nødvendig. Instruksjoner
en
Avgjør om rekursjon er egnet for ditt behov. Du må være i stand til å uttrykke beregningsorientert prosessen involvert i å løse ditt problem i form av gjentatte samtaler til seg selv . Et populært eksempel er fakultetet beregning som er resultatet av å multiplisere en rekke tall opp til " N" og kan uttrykkes som en rekursiv beregning.
2
Bestem deg for at du kan bruke splitt-og hersk strategi for å løse problemet ditt . Eksempelvis er den " quicksort "-metoden som på rekursiv beregning under sorteringsprosessen . På en lignende måte, må du være i stand til å dele problemet opp i mindre biter og behandle dem rekursivt .
3
Opprett Java metode som du vil kalle rekursivt . Sørg for at din Java -metoden inneholder alle de nødvendige seks komponenter , nemlig modifier , retur-type metode navn, parameter liste , unntak liste og metoden kroppen .
Definerer for eksempel følgende linje en metode som kalles " quicksort ( ) " som aksepterer en matrise som skal sorteres sammen med venstre og høyre indekser : en
void quicksort ( int arr [ ] , int venstre , int høyre) { }
4
Sørg for at du inkluderer kallet til seg selv inne i metoden som inneholder rekursive beregningen. For eksempel på innsiden av " quicksort ( ) "-metoden , følgende samtaler til mer " quicksort ( )" metoder kan være funnet:
int index = partisjon (arr , venstre, høyre ) ;
< p > if ( venstre < index - 1 )
quicksort (arr , venstre, index - 1 ) ;
if ( index < høyre)
quicksort (arr , indeks, høyre ) ;
parametere som sendes til den påfølgende rekursive kall er å være mindre enn de forrige. Dette er et vesentlig element i splitt-og hersk -strategi.
5
Test den rekursive funksjon samtale . Du kan definere en klasse for å teste rekursjon og en " main ( ) "-metoden inni den for å ringe rekursiv funksjon og sikre at det fungerer riktig . For eksempel : en
klasse Rekursjon {
public static void main ( String args [ ] ) { }
}