class ListNode{
ListNode next=null;
int val=0;
}
class LimitedClycleQueue{
ListNode queue = new ListNode();
static final int capacity =3;//容量
int size=0;//当前元素个数
void add(int val){
if(size==0){
queue.val=val;//头结点
}else{
if(size==capacity){//队列满时,移除头结点,再在尾部添加。
poll();
}
ListNode tmp = new ListNode();
tmp.val=val;
ListNode tmp1=queue;
while(tmp1.next!=null){ //遍历到之后一个结点,尾部添加
tmp1=tmp1.next;
}
tmp1.next=tmp;
}
size++;//个数加一
}
int poll(){
if(size<=0){
System.out.println("队列以空,无法移除");
return -1;
}
int val = queue.val;//记录头结点值
queue=queue.next;//移除头结点
size--; //个数减一
return val;
}
}