come implementare pile e code in c++?
sono riuscito ad implementare solo delle semplici liste,,,...
come implementare pile e code in c++?
sono riuscito ad implementare solo delle semplici liste,,,...
SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
Di questo libro e degli altri (blog personale di recensioni libri) | NO M.P. TECNICI
Per implementare una coda puoi utlizzare una struttura linkata in cui ti manieni un puntatore al primo e un puntatore all'ultimo elemento della coda: il primo serve per prelevare il prossimo elemento; l'ultimo per aggiungere in coda.
Per una pila ti basta il puntatore alla cima della pila sia per l'operazione di push che per quella di pop.
Alternativamente, se il numero di elementi massimo e limitato, puoi utilizzzare un array e ti mantieni la prima e l'ultima posizione con degli indici interi,
Utilizzando la lista, puoi benissimo creare sia una coda che una pila.Originariamente inviato da Alex'87
come implementare pile e code in c++?
sono riuscito ad implementare solo delle semplici liste,,,...
Per fare la coda utilizzi due puntatori, uno che punta in testa, l'altro che punta in coda (quindi appena inserisci un elemento, tutti e due punteranno a questo).
Appena inserisci di nuovo, incrementi il puntatore di coda, e poi ancora e poi ancora.
Appena devi estrarre l'elemento dalla coda, visualizzi quello che è puntato dal puntatore di coda, e fai puntare la coda al sucessivo.
Infatti, nella coda il primo elemento che entra è il primo che esce.
La pila invece è molto più semplice, perchè ti basta un puntatore che punta alla testa.
Ogni volta che pushi un elemento, cambi il puntatore di testa, ogni volta che poppi un elemento, fai puntare il puntatore al elemento sotto.
Ovviamente l'elemento sarà del tipo:
Ciao!codice:struct elemento { int informazione; struct elemento *punt; }
michele
michele.facchin@virgilio.it
Server:irc.azzurra.org | /join #c
grazie adesso ci provo ma mi pare di aver capito!
SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
Di questo libro e degli altri (blog personale di recensioni libri) | NO M.P. TECNICI