package DataDtructure;
/**
* ClassName: ArrayQueue
* Company:华中科技大学电气学院
* date: 2019/8/23 15:48
* author: YEXIN
* version: 1.0
* since: JDK 1.8
* Description:通过之前的动态数组实现队列
*/
public class ArrayQueue<E> implements Queue<E> {
private Array<E> array;
public ArrayQueue(int capacity){
array = new Array<>(capacity);
}
public ArrayQueue(){
array = new Array<>();
}
@Override
public int getSize() {
return array.getSize();
}
@Override
public boolean isEmpty() {
return array.isEmpty();
}
public int getCapacity(){
return array.getCapacity();
}
@Override
public void enqueue(E e) {
array.addLast(e);
}
@Override
public E getFront() {
return array.getFirst();
}
@Override
public E dequeue() {
return array.removeFirst();
}
@Override
public String toString(){
StringBuilder res = new StringBuilder();
res.append(String.format("Queue:size = %d,capacity = %d\n",array.getSize(),array.getCapacity()));
res.append("front:");
res.append('[');
for(int i = 0 ;i < array.getSize(); i++){
res.append(array.get(i));
if(i != array.getSize() - 1){
res.append(",");
}
}
res.append("] tail");
return res.toString();
}
}
java实现数据结构---队列(数组底层实现)
最新推荐文章于 2021-10-26 22:21:17 发布
本文介绍了一种使用动态数组来实现队列数据结构的方法。该队列由华中科技大学电气学院的YEXIN开发,支持enqueue、dequeue、getFront等操作,并提供了getSize、isEmpty、getCapacity等状态查询方法。
&spm=1001.2101.3001.5002&articleId=100040480&d=1&t=3&u=56205b2a0bc1469197bb497c30c4af30)
2772

被折叠的 条评论
为什么被折叠?



