Профил
Loading...
ison4eto avatar ison4eto 41 Точки

Въпрос относно Stack and Queue

Здравейте,

Започнах да решавам задачите и стигнах до следния казус. Стека и опаршата се дефинират със следния код:

ArrayDeque<Integer> stack = new ArrayDeque<>();

ArrayDeque<Integer> queue = new ArrayDeque<>();


В такъв случай компилаторът как разбира дали ползваме стек или опашка. Случи ми се на една от задачите да ползвам опашка (или поне аз така си мислех), но май тя работи като стек. Разбирам на теория разликата между двете, но не схващам как като ги дефинираме по един и същи начин разбираме кое от двете ползваме. Обяснете ми, моля.

Предварително благодаря за отделеното време.

Тагове:
0
Java Advanced
valkata1220 avatar valkata1220 20 Точки
Best Answer

Можеш да прочетеш за ArrayDeque ТУК!  Също така можеш да го обхождаш и с for each ! И зависи какви методи използваш :

За Stack:

   push()  - добавя елемент най - отгоре .

   pop() - премахва последно добавения елемент.

   peek() - показва най-горния елемент/последния довабен без да прави каквото и да е с него .

За Queue:

   add() - добавя елемент към опашкатa i хвърля exceptiion , aкo е пълна ;

   offer() - добавя елемент към опашкатa и ако е пълна връща false .

 

   remove() - премахва първия добавения елемент и ако няма такъв хвърля exception.

   poll() - премахва първия добавения елемент и ако няма такъв връща 

   peek() - показва първия елемент 

0
07/10/2017 13:25:49