Avevo sempre pensato che la "testa" di una coda fosse l'elemento successivo da leggere, e non avevo mai messo in dubbio quell'uso. Quindi una libreria di liste collegate che ho scritto, che viene utilizzata per mantenere le code, codifica quella terminologia: abbiamo una list1_head
macro che recupera il primo elemento; quando si utilizza questa libreria in una coda, questo sarà il primo elemento da rimuovere.
Ma un nuovo sviluppatore del team era abituato ad avere le code implementate al contrario. Ha descritto una coda che si comporta come un cane: si inserisce in testa e si rimuove in coda. Questa è una descrizione abbastanza intelligente che ritengo che il suo utilizzo debba essere più diffuso e non ho una descrizione altrettanto evocativa del mio utilizzo preferito.
Quindi, immagino, ci sono due domande correlate: 1, cosa significa per te la "testa" di una coda? e 2, perché usiamo la parola "testa" per descrivere quel concetto?