Junior — Middle
Můžete vysvětlit hlavní rozdíly mezi datovými strukturami Fronta a Deque?
sobes.tech AI
Odpověď od AI
Fronta a Deque jsou datové struktury pro ukládání prvků v určitém pořadí jejich odebrání, ale s různými možnostmi:
-
Fronta (queue) — je datová struktura, která funguje podle principu FIFO (First In, First Out). Prvky jsou přidávány na konec a odebírány z začátku. Příklad: fronta úkolů.
-
Dequ (dvojitá fronta) — rozšíření fronty, které umožňuje přidávat a odstraňovat prvky jak z začátku, tak z konce. To poskytuje větší flexibilitu, například pro implementaci zásobníku nebo fronty.
V jazyce Java interface Queue podporuje operace offer(), poll(), peek(), a Deque přidává metody jako addFirst(), addLast(), removeFirst(), removeLast() atd.
Příklad použití Deque jako zásobníku:
Deque<Integer> stack = new ArrayDeque<>();
stack.push(1); // přidá prvek na vrchol
stack.push(2);
int top = stack.pop(); // odebere 2
Tímto je Deque univerzálnější než Fronta.