tips
:接下去会在github写博客,简书不再更新和修改文章,欢迎大家逛逛我的新博客点击查看 ,我会尽量用更容易理解的方式写好每一篇博客,大家一起学习交流😄。
队列(Queue) ,和栈非常类似,但使用不用原则,即 先进先出 。
例子:排队
创建队列
(和创建栈很类似,不详细讲,可参考javascript数据结构--栈)
function Queue() {
var items = [];
// 队列尾部添加新项
this.enqueue = function(element){
items.push(element);
};
//移除并返回队列第一项
this.dequeue = function(){
return items.shift();
};
this.front = function(){
return items[0];
};
this.isEmpty = function(){
return items.length == 0;
};
this.clear = function(){
items = [];
};
this.size = function(){
return items.length;
};
this.print = function(){
console.log(items.toString());
};
}
Queue类和Stack类非常类似,唯一区别是dequeue 方法和front方法的不用,由先进先出,后进先出原则不同造成。
- 使用
var queue = new Queue(); console.log(queue.isEmpty()); //true
queue.enqueue("John");
queue.enqueue("Jack");
queue.enqueue("Camila");
queue.print();//John,Jack,Camila
queue.dequeue();
queue.dequeue();
queue.print();//Camila