您的位置:首页 > 理论基础 > 数据结构算法

数据结构 - 队列

BradyCC 2019-06-15 09:43 92 查看 https://blog.csdn.net/bradycc/

队列

数据结构 - 队列,先入先出。

// 队列实现
// ES5
var Queue = function() {
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.size = function() {
return items.length;
};

// 检查items
this.getItem = function() {
return items;
};
};

队列 - 实现击鼓传花游戏。

// 玩家列表
var names = ['a', 'b', 'c', 'd', 'e', 'f'];

// 游戏规则
var number = 3;

// 击鼓传花游戏
var game = function(names, number) {
var q = new Queue();
for (var i = 0; i < names.length; i++) {
q.enqueue(names[i]);
}

var over = '';
while (q.size() > 1) {
for (var i = 0; i < number - 1; i++) {
q.enqueue(q.dequeue());
}
over = q.dequeue();
console.log('淘汰的玩家是:' + over);
}

return q.dequeue();
};
标签: