|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2009
Messaggi: 1056
|
[C]Alberi binari
Salve a tutti
Sto smanettando un pò con gli alberi binari, implementando nei programmi algoritmi ricorsivi per visita, inserimento, ricerca ecc. Volevo provare a scrivere un algoritmo per la visita(per contare il numero di nodi) di un albero in versione iterativa però non saprei proprio da dove cominciare Se qualcuno ha qualche idea mi farebbe molto piacere! Grazie a tutti! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Per gli alberi e le visite devi chiedere a Vincenzo1968.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Non è difficile.
Immagina una visita in-order comunissima, fatta ricorsivamente: Codice:
algoritmo InOrderTraversal(albero T)
{
se T non è nullo {
InOrderTraversal(nodo sinistro di T);
visita il nodo T;
InOrderTraversal(nodo destro di T);
}
}
Verrebbe fuori una cosa del genere: Codice:
algoritmo InOrderTraversal(albero T)
{
stack S;
nodo N;
N = radice di T;
ripeti {
finché N non è nullo {
aggiungi N in cima alla pila S;
N = figlio sinistro di N;
}
se la pila S è vuota {
esci;
}
N = preleva la cima della pila S;
visita N;
N = figlio destro di N;
}
}
ciao
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383
|
ti confondi con le macchine a stati
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
No, ha anche diversi tutorial su alberi binari (autobilancianti e non) sul suo sito...
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
In verità stavo pensando di scrivere qualcosina io sugli alberi AVL, anche se non sono propriamente la fonte più autorevole... e comunque sì, un bel autodafè ci sta tutto.
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#8 | ||
|
Senior Member
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383
|
Quote:
*per capire la mia ilaritá bisogna conoscere alcuni eventi di vita reale ![]() Quote:
|
||
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Dec 2009
Messaggi: 1056
|
grazie a tutti per le risp
dovrei usare una pila per ricreare la situazione che si crea in memoria con le chiamate ricorsive, non ci avevo proprio penato... |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:03.




















