//队列,先进先出
class Queue {
constructor () {
this.items = []
}
//入队
enQueue (elem) {
return this.items.push(elem)
}
//出队
deQueue () {
return this.items.shift()
}
//查看队首元素
front () {
return this.items[0]
}
//是否为空
isEmpty () {
return this.items.length <= 0
}
//清空队列
clear () {
this.items = []
return true
}
//队列长度
size () {
return this.items.length
}
}
//击鼓传花
function jigu (personNum, num) {
let queue = new Queue()
let index = 1
for (var i = 0; i < personNum; i++) {
queue.enQueue(i+1)
}
while (queue.size() > 1) {
if (index >= num) {
index = 1
queue.deQueue()
}
queue.enQueue(queue.deQueue())
index++
}
return queue.items
}
var number = jigu(13, 5)
console.log(number)