堆栈和队列与java

时间:2015-11-19 22:42:27

标签: java stack queue

我试图解决下面的问题,但我不确定Q.insert(S.top())的功能 以下是问题:
填写表格,显示一系列优先级队列和堆栈操作的输出及其对a的影响 最初清空整数的优先级队列Q和整数的空堆栈S.一定要注明 您显示的每个数据结构的方向(即前,后,顶部,底部)。 (10p)

|操作|输出|堆栈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 个答案:

答案 0 :(得分: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())

将S.top()返回的'8'插入队列。