数据结构-javascript实现【队列】
队列是遵循先进先出(FIFO) 原则的一组有序的项,队列在尾部添加新元素,并从首部移除元素。
1.队列可用的的方法
enqueque(elements) : 向队列尾部添加一个或多个新的元素
dequeque(): 移除队列的第一个元素,并返回被移除的元素
front(): 返回队列中第一个元素,最先被添加,也是最先被移除的元素
isEmpty(): 检测队列是否为空
size(): 返回队列中包含的元素个数
2. 队列的实现
function queue() { let items = []; const enqueue = (element) =>{ items.push(element); }; const dequeue = () => { return items.shift(); }; const front = () => { return items[0]; }; const isEmpty = () => { return items.length === 0; }; const clear = () =>{ items = []; }; const size = () => { return items.length; }; const print = () => { console.log(items.toString()); }; return { enqueue, dequeue, front, isEmpty, clear, size, print }; }
const queueObj = queue();
console.log(queueObj.isEmpty()); // true
queueObj.enqueue('John');
queueObj.enqueue('Jack');
console.log(queueObj.size()); // 3
queueObj.dequeue();
queueObj.print();