循环队列-击鼓传花游戏
击鼓的时候传❀,到时间手上拿着花的淘汰,最后剩下的人是胜者。
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() }; }
栈和队列算法 文章被收录于专栏
栈和队列算法