Buonasera a tutti,
Ho a disposizione un frammento di memoria, all'interno del quale posso salvare dati nella forma di una pila, di tipo Last In, First Out, ovvero l'ultimo elemento inserito nella pila, è quello che viene estratto per primo.
A me servirebbe convertire questo tipo di stack in una coda, ovvero in una First In, First Out, in modo che, ad ogni operazione di "pop" dallo stesso stack, mi restituisca non l'ultimo valore inserito, ma il primo.
Sapete se esiste qualche algoritmo collaudato, oppure qualche libreria open che fa questo genere di trasformazione?
L'unico metodo che mi viene in mente è di usare un iteratore che tenga costantemente traccia del numero e della posizione di tutti gli elementi, in modo da poter raggiungere sia top che bottom della mia pila, e poter estrarre il primo valore, ma mi sembra un metodo un po' contorto, magari esiste qualche sistema più ottimizzato.
Vi ringrazio.
Un saluto
Convertire una pila (LIFO) in una coda (FIFO)
Moderatore:
Paolino
3 messaggi
• Pagina 1 di 1
0
voti
Se la dimensione massima è nota a priori e le sole operazione sono quelle di inserire e togliere basta un semplice buffer circolare:
https://en.wikipedia.org/wiki/Circular_buffer
https://en.wikipedia.org/wiki/Circular_buffer
3 messaggi
• Pagina 1 di 1
Torna a Firmware e programmazione
Chi c’è in linea
Visitano il forum: Nessuno e 7 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)




