队列是一种列表,和栈不同的是,栈是先进后出,后进先出,但是对于队列来说,它是先进先出,队列有点像我们现实生活中排队打饭的人群,排在最前面的人第一个先打饭,新来的人 只能在后面排队,直到轮到他们为止。
队列的操作主要有两种,向队列中插入新元素和删除队列中的元素。所以队列也是一种操作受限的线性表。
队列和栈一样,根据实现方式不同,分为两种,一种是基于数组实现的顺序队列,一种是基于链表实现的链式队列。
接下来我们先用js实现一个基于数组的顺序队列。
function quene(n)
{
this.head=0;
this.tail=0;
this.dequene=dequene;
this.enquene=enquene;
this.arraylist=new Array(n);
}
function enquene(data)
{
if(tail==n)
{
return false;
}
this.arraylist[tail]=data;
++tail;
return true;
}
网友评论