export default class MyCircularQueue{ constructor (k){ //用来保存数据长度为k的数据结构 this.list=Array(k) this.front=0//队首的指针 this.rear=0 //队尾的指针 this.max=k //队列的长度 } enQueue(num){ if(this.isFull()){ return false }else{ this.list[this.rear]=num this.rear=(this.rear+1)%this.max return true } } deQueue(){ let v=this.list[this.front] this.list[this.front]='' this.front=(this.front+1)%this.max return v } isEmpty(){ return this.front===this.rear&&!this.list[this.front] } isFull(){ return this.front===this.rear&&!!this.list[this.front] } Front(){ return this.list[this.front] } Rear(){ let rear=this.rear-1 return this.list[rear<0?this.max-1:rear] } }