队列跟栈有所不同。栈是后进先出,而队列则是先进先出。就好比排队买早餐,前面买完先走,后面的继续等待。添加的在队尾,要删除的在队首。废话不多说,让我们来创建一个队列吧。
首先建立骨架 function queue( ){ }
然后创建一个数组来存储队列的元素 var arr=[ ];
其实队列的方法和栈的方法很相似,只是删除和添加元素的原则不同,现在我们来看看队列的一些方法
1、enqueue(Element) 向队尾添加一个或多个元素
2、dequeue(Element) 删除队列第一个元素,并返回该元素
3、front() 返回队列第一个元素,不修改队列
4、isEmpty() 判断队列是否为空,是则返回true,反之返回false
5、size() 返回队列的元素个数
好了,方法介绍完了,让我们来完善这些方法
1、this.enqueue=function(element){
arr.push(element)
}
2、this.dequeue=function(element){
return arr.pop(element)
}
3、this.front=funtion(){
return arr[0]
}
4、this.isEmpty=function(){
return arr.length==0
}
5、this.size=funtion(){
return arr.length
}
现在方法完善好了,将他们放进骨架里就好了。接着便可以调用这些方法。
var fn=new queue()
fn.enqueue()等等方法
后面再继续介绍优先队列