Java ricorsione Tutorial

September 2

Java ricorsione Tutorial


In informatica, una chiamata di metodo ricorsivo è un metodo che si definisce durante il processo di calcolo. Il linguaggio di programmazione Java supporta la ricorsione come parte della sua sintassi di programmazione. Mentre potrebbe essere difficile per i programmatori principianti Java da afferrare, scrivendo metodi ricorsivi consente spesso concetti matematici per essere espressi in modo chiaro nel programma. Per questo motivo, è importante per i programmatori Java per capire come utilizzare la ricorsione e le sue limitazioni.

istruzione

1 Determinare se il processo di calcolo da eseguire si presta a ricorsione o meno. È importante che il processo di calcolo nel metodo può essere ridotta a una chiamata ripetuto a se stesso.

Uno dei calcoli ricorsione popolari è il processo di determinazione del fattoriale di un numero. Un fattoriale di un numero N è il risultato della moltiplicazione tutti i numeri da 1 a N stesso. Ad esempio, utilizzando la moltiplicazione diretta:

Fattoriale (3) = 3

2 1 = 6

Tuttavia, lo stesso risultato si ottiene se visti ricorsivo:

Fattoriale (3) = 3 fattoriale (2) = 3 2 fattoriale (1) = 3 2 * 1 = 6

Si noti che ogni passo successivo si riferisce allo stesso processo ma in termini più semplici.

2 Dichiarare il metodo Java che potrebbe eseguire il calcolo ricorsivo. Un metodo di solito ha almeno il modificatore, il tipo di ritorno, i nomi dei metodi e la lista dei parametri corrispondente. Il nome del metodo inizia normalmente con una parola verbale minuscolo. Ad esempio, la riga seguente definisce un metodo chiamato "infatti ()" che accetta un valore di numero intero di n e restituisce la sua fattoriale:

int fatto (int n) {}

3 Assicurarsi che nel corpo del metodo ricorsivo, il calcolo viene eseguito effettuando una chiamata a se stesso. Assicurarsi che ci sia una condizione di terminazione della chiamata ricorsiva pure; altrimenti il ​​metodo verrà eseguito a tempo indeterminato senza fermarsi. Ad esempio, la seguente riga calcola i factoria di un determinato numero n di per sé chiamando successivamente per eseguire lo stesso calcolo con un valore più semplice di n-1.

int fatto (int n) {

int result;

if (n == 1) return 1;

risultato = fact (n-1) * n;

risultato tornare;

}

Quando n-1 è uguale a 1, viene restituito il valore 1. Questa è la condizione di terminazione del calcolo ricorsivo.

4 Chiamare il metodo ricorsivo per testarlo. Ad esempio, la seguente riga chiama il "fatto ()" metodo passando un valore di 3 per stampare sulla console:

System.out.println ( "Il fattoriale di 3 è" + f.fact (3));

Assicurarsi che il messaggio 'fattoriale di 3 è 6' viene stampato sullo schermo.