使用 List 的任一实现类构造一个队列数据结构,需使用泛型。 要求:必须实现下列方法: get():出队列,返回出队列的结点 put():入队列 isEmpty():判断队列是否为空
时间: 2024-03-23 18:38:01 浏览: 49
C语言实现数据结构:单链表,循环链表,双向链表;静态顺序队列
好的,我来回答你的问题。
首先,我们可以使用 Java 中的 ArrayList 类来实现队列,以下是代码实现:
```java
public class Queue<E> {
private ArrayList<E> list;
public Queue() {
list = new ArrayList<>();
}
public E get() {
if (isEmpty()) {
throw new NoSuchElementException("Queue is empty");
}
return list.remove(0);
}
public void put(E element) {
list.add(element);
}
public boolean isEmpty() {
return list.isEmpty();
}
}
```
上述代码中,我们使用了 ArrayList 类来存储队列中的元素。在 get() 方法中,我们先判断队列是否为空,如果为空,则抛出 NoSuchElementException 异常;否则,我们使用 ArrayList 的 remove() 方法来删除队首元素并返回它。在 put() 方法中,我们直接使用 ArrayList 的 add() 方法来添加元素。在 isEmpty() 方法中,我们使用 ArrayList 的 isEmpty() 方法来判断队列是否为空。
希望能够帮助到你!
阅读全文