循环队列-击鼓传花游戏
击鼓的时候传❀,到时间手上拿着花的淘汰,最后剩下的人是胜者。
function hotPotato(elementsList,num){
const queue = new Queue();
const eliminatedList = [];
for(let i=1;i<elementsList.length;i++){
queue.enqueue(elementsList[i]);
}
while(queue.size()>1){
for(let i=1;i<num;i++){
queue.enqueue(queue.dequeue());
}
eliminatedList.push(queue.dequeue())
}
return {
eliminated:eliminatedList,
winner:queue.dequeue()
};
}栈和队列算法 文章被收录于专栏
栈和队列算法
基恩士成长空间 437人发布