gpt4 book ai didi

java - 我的 peek() 方法不会返回队列的头部

转载 作者:行者123 更新时间:2023-12-01 23:41:12 25 4
gpt4 key购买 nike

我制作了一个 QueueRunner 类。我试图找出在 poll() 或 Offer() 之后迭代到队列的头部,以使用 peek() 返回队列的头部。不过,我在返回队列的头部或前面时遇到了问题。

Public class Queue<T> {
private ArrayList<T> elements;

public Queue() {
this.elements = new ArrayList<T>();
}

/**
* Offers an element to the end of the queue.
*
* @param T item
*/
public void offer(T element) {
this.elements.add(element);
}

/**
* Peeks at, but does not remove, the element at the head of the queue.
*
* @return T
*/
public T peek() {
if(this.elements.size()==0) {
return null;
}
else {
return this.elements;
// return this.elements.get(this.elements.size()-1);
}
}

/**
* Polls an element from the head of the queue.
*
* @return T
*/
public T poll() {
return this.elements.remove(0);
}

最佳答案

this.elements.get(0) 将返回队列的头部/前端。由于队列是 FIFO 的,因此添加的第一个元素将是第一个进入的元素,因此是队列的头部。

关于java - 我的 peek() 方法不会返回队列的头部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58258916/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com