这不是HW或作业。这是我自己在练习的。
给定一个队列,编写一个反向方法来反向队列的元素。MyQueue保持不变。
签字:
public Queue<T> reverse(Queue<T> myQueue) {
注意:未知队列是使用节点还是数组生成的。
队列已经实现了一些方法,我们可以使用这些方法:
void enqueue(T element)
T dequeue();
boolean isFull();
boolean isEmpty();
int size();
在Java是这样的:
public void reverse(Queue q)
{
Stack s = new Stack(); //create a stack
//while the queue is not empty
while(!q.isEmpty())
{ //add the elements of the queue onto a stack
s.push(q.serve());
}
//while the stack is not empty
while(!s.isEmpty())
{ //add the elements in the stack back to the queue
q.append(s.pop());
}
}
队列的append和serve方法用于添加和删除该队列的元素。
队列包含以下元素:
1 2 3 4
当元素被添加到堆栈中时,数字1将位于列表的底部,而数字4将位于顶部:
1 2 3 4<-顶部
现在弹出堆栈并将元素放回队列中:
4 3 2 1
我希望这有帮助。
我试图编写一个递归方法来反转队列中的所有元素。 在实现队列的抽象类myQueue中 接口队列 在我的反向方法中,我的目标是不断地递归地从原始队列中退出队列(删除第一个元素),直到队列为空。每次我退出队列时,我都会将该对象放入一个临时队列中。当我的队列为空时,我将从临时队列重新排队到原始队列。 我的第一个问题是定义一个新的临时队列,在我的例子中是bufferQueue。我得到以下信息:
我希望程序在输出中打印与队列内容相反的内容(使用数组提示) 我有3个类,节点,类,主 输出[70、60、55、50、40、30、20、10]
我的取消排队方法目前也不会删除我想要的项,而是从集合中删除最后一个元素。例如 如果我添加元素:1,2,3我的toString方法将按预期返回1,2,3。 然后,当我使用我的驱动程序调用 dequeue 时,它应该取消第 0 个元素的排队,在本例中为 1。 尽管该方法表示“已从队列中删除元素1”,提示<code>T result 然后,当我再次调用enqueue方法时,在同一个队列上,如果我将字符串
Python3 列表 描述 reverse() 函数用于反向列表中元素。 语法 reverse()方法语法: list.reverse() 参数 NA。 返回值 该方法没有返回值,但是会对列表的元素进行反向排序。 实例 以下实例展示了 reverse()函数的使用方法: #!/usr/bin/python3 list1 = ['Google', 'Runoob', 'Taobao', 'B
我很难理解linkedlist队列的enqueue方法的代码。我理解dequeue()、isEmpty()、First()和size()。首先,这里有一个LinearNode类来创建新的节点对象: 下面是Enqueue方法 在此编辑包含Enqueue方法的LinkQueue类:
这段代码有两个问题: explext强制转换; 我想知道是否有一行的解决方案。 那么我们有没有更优雅的方法来做到这一点呢? 队列是否反向并不重要。我需要一个反转元素的int数组。