Stacks & queues are basic linear data strcutures.
Both have flexible size , meaning they grow and shrink dynamically as you take in & take out data.
The difference between a stack & a queue is the way data is removed.
In a stack design , this is Last In , First Out. ( like a stack of books in real life, if you want to remove a book from that stack
you have to take away the book which is on top & this book was in fact the last one to be put there.
In a queue design , this is First In , First out (like a queue in a supermarket) .