2015-11-19 2 views
-4

Я пытался решить вопрос ниже, но я был настолько уверен в функции Q.insert(S.top()) Ниже вопрос:
Заполните таблицу, показывающей результат выполнения ряда операций очередей приоритетов и стеки и их влияние на первоначально пустую очередь приоритетов Q целых чисел и пустой стек S целых чисел. Обязательно укажите ориентацию каждой отображаемой структуры данных (например, переднюю, заднюю, верхнюю, нижнюю). (10p)Stack и Queue с Явой

| Операция | Выход | Stack S | Очередь Q | задний | фронт |

Q.insert(9) 

Q.insert(11) 

Q.peek() 

S.push(8) 

Q.insert(S.top()) 

S.push(Q.remove()) 

Q.insert(Q.remove()) 

S.size() == Q.size() 
+1

В чем вопрос? –

+1

Я получаю то, что вы пытаетесь спросить, но где ваши усилия? –

ответ

0

Предполагая, что очередь нужно Q и стек S пусты в начале этой серии операций ...

S.push(8) 

помещает элемент 1 в стеке со значением «8»

S.top() 

затем возвращает '8'

При вызове функции, такой как Q.insert(<param>), параметр не обязательно должен быть константой; это может быть переменная или все, что приведет к правильному типу параметра.

Так что, если у вас есть такие методы, как

public void insert(int n); 
public int top(); // returns an int(eger) 

Вы можете позвонить вставить любой из этих способов

int meaning = 42; 
Q.insert(10); 
Q.insert(meaning); 
Q.insert(Math.round(3.14)); // 'round' produces an int 

так ...

Q.insert(S.top()) 

вставляет '8' вернулся из S.top() в очередь.