Esecuzione Di Una Funzione Ricorsiva

9
Lezione per la classe IVA Liceo Tecnico – febbraio 2009

description

Traccia della esecuzione di una funzione ricorsiva

Transcript of Esecuzione Di Una Funzione Ricorsiva

Page 1: Esecuzione Di Una Funzione Ricorsiva

Lezione per la classe IVA Liceo Tecnico – febbraio 2009

Page 2: Esecuzione Di Una Funzione Ricorsiva

Ogni qual volta è eseguita una funzione ricorsiva instanziamo un rettangolo con 3 scomparti.

Nel primo mettiamo il nome della funzione e i nomi dei parametri con i loro valori

Nel secondo mettiamo il valore restituito che, finchè la ricorsione non avrà raggiunto il caso base, sarà incognito e risulterà in una nuova chiamata alla medesima funzione

Nel terzo scomparto mettiamo il valore quando sarà conosciuto

Page 3: Esecuzione Di Una Funzione Ricorsiva
Page 4: Esecuzione Di Una Funzione Ricorsiva
Page 5: Esecuzione Di Una Funzione Ricorsiva
Page 6: Esecuzione Di Una Funzione Ricorsiva
Page 7: Esecuzione Di Una Funzione Ricorsiva

A è un array che contiene n interi. Scrivi una funzione ricorsiva che trova il numero di volte che un dato intero x appare in A.

Scrivi una funzione ricorsiva che restituisce l’elemento più grande del precedente array

Scrivi una funzione ricorsiva che cerca se esiste un dato numero nel precedente array

Page 8: Esecuzione Di Una Funzione Ricorsiva

Fare l’activation tree per la seguente funzione ricorsiva:

public static int test(int m, int r){ if (r==0) return 1; if (r==1) return n; if (r==n) return 1; return test(n-1,r-1)+test(n-1,r)

}Che cosa è restituito dalla chiamata test(7,2) ?

Page 9: Esecuzione Di Una Funzione Ricorsiva