|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Feb 2004
Messaggi: 1635
|
Ricorsione di coda: chi mi linka qualche spiegazione?
Ciao ragazzi!
Dove posso trovare informazioni sulla ricorsione di coda? Grazie mille. ![]() EDIT: possibilmente in italiano. ![]() |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
|
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Feb 2004
Messaggi: 1635
|
Quote:
In generale... mi serve il concetto. ![]() |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
personalmente non so aiutarti, ma ho trovato questo:
Codice:
Le funzioni ricorsive non sono tutte uguali. La ricorsione tail (o di coda) merita particolare attenzione. Si ha tail recursion quando la chiamata ricorsiva è l’ultima istruzione effettuata dalla funzione prima di terminare Normalmente, in una ricorsione è necessario conservare lo stato della computazione prima di fare la chiamata ricorsiva,perché servirà al ritorno. Nella ricorsione tail , invece, non essendoci altre operazioni da svolgere dopo la chiamata ricorsiva, conservare lo stato della computazione non è necessario (almeno in linea di principio). http://www.gmsl.it/mathweb/ricorsione/ricors.htm
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Feb 2004
Messaggi: 1635
|
Quote:
Non preoccuparti, grazie mille per il link. ![]() |
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Feb 2004
Messaggi: 1635
|
Up.
![]() |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
Ah, e' quella la ricorsione di coda? Cacchio, l'ho sempre usata ma non sapevo si chiamasse cosi'...
![]() Comunque: http://www.google.it/url?sa=t&ct=res...EJbUwgG6nI26BA E' un pdf, parla di tail recursion a pagina 20 e successive. Non e' molto, pero'... Ciao
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() |
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Feb 2004
Messaggi: 1635
|
Quote:
Grazie anche a te... ![]() |
|
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
si la ricorsione di coda è quella
ottima per risparmiare memoria, a patto di poter mettere come ultima istruzione la chiamata a funzione. non sempre si può purtroppo |
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Nov 2002
Città: Padova
Messaggi: 2206
|
Mitchell la spiega nel suo testo Concepts in Programming Languages [ENG], che trovi in "giro"
![]() In parole povere, la tail recursion permette di riutilizzare il record di attivazione della prima chiamata, in quanto non serve lo spazio per le variabili locali, visto che l'ultima istruzione della funzione ricorsiva è appunto la chiamata ricorsiva ![]()
__________________
Fisso: Case Corsair Carbide 275Q PSU Seasonic Focus GX-850 MB Asus TUF GAMING X570-PLUS CPU AMD Ryzen 3900x Cooler AMD Wrait Prism RAM 2*16GB G.Skill RipJaws V DDR4 3200MHz VGA EVGA GeForce RTX 2060 Super 8GB Monitor Asus VX239H SSD 2*ADATA XPG SX8200 PRO 1TB Raid0 Router Netgear DGND4000 SO Windows 10 Print&Scan Epson WF-4830 / Laptop: Dell XPS L502X / Mobile: Pixel 7a |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Studiando linguaggi come LISP / Scheme e Prologo, è una cosa che si è praticamente obbligati a imparare, e a usare bene...
![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:52.