javaScript数据结构之队列
01 队列
队列是遵循先进先出的原则的一组有序项。
02 队列的接口
照样用java语法写一个队列的接口
public interface Queue {
// 向队列尾部添加多个元素
public void enqueue(Element... elem);
// 移除第一项,并返回
public Element dequeue();
// 返回队列第一个元素
public Element front();
// 队列是否为空
public boolean isEmpty();
// 返回元素的个数
public int size();
}
03 实现一个队列
function Queue(arr) {
var _item = arr || [];
this.enqueue = function(elem) {
_item.push(elem);
};
this.dequeue = function() {
return _item.shift();
};
this.front = function() {
return _item[0];
};
this.isEmpty = function() {
return _item.length === 0;
};
this.clear = function() {
_item = [];
};
this.toString = function() {
return _item.toString();
};
}
var queue = new Queue(['唐僧']);
queue.enqueue('孙悟空');
queue.enqueue('猪八戒');
queue.enqueue('沙和尚');
console.log(queue.toString());