Junior — Middle
What is the difference between a 'stack' data structure and a 'queue'?
sobes.tech AI
Answer from AI
Stack and queue are data structures with different principles of operation:
-
Stack operates on the LIFO (Last In, First Out) principle, meaning the last added element is retrieved first. Imagine a stack of plates: you take the top one.
-
Queue operates on the FIFO (First In, First Out) principle, meaning the first added element is retrieved first. Analogy — a line in a store: served in the order of arrival.
Example in Java:
Stack<Integer> stack = new Stack<>();
stack.push(1);
stack.push(2);
int top = stack.pop(); // returns 2
Queue<Integer> queue = new LinkedList<>();
queue.add(1);
queue.add(2);
int first = queue.poll(); // returns 1
Thus, the choice of structure depends on the task: stack is convenient for reverse traversal, queue — for sequential processing.