js演算法與資料結構 佇列

2021-10-08 19:35:18 字數 1365 閱讀 4856

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-fvh5gtpw-1596439038895)(/img/bvbkx5k)]

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-po1fy9ya-1596439038900)(/img/bvbkx5q)]

//佇列 一種先進先出的資料結構

var queue = function()

//出隊

this.dequeue = function()

//檢視佇列頭

this.front = function()

//佇列長度

this.size = function()

//判斷是否為空

this.isempty= function()

}

有多個玩家進行擊鼓傳花,每位玩家依次開始擊鼓,擊一次鼓傳花一次,並且計數加1(從0開始),當有玩家擊鼓後,計數為3時,則淘汰該玩家,計數歸0,繼續進行上述過程,直到剩餘一名玩家為勝利者,遊戲結束。

//擊鼓傳花

var setflowerparams = function(user, number)

//迴圈佇列

while( passflower.size() > 1)

var taotai = passflower.dequeue()

console.log('淘汰' + taotai)

} return console.log('最終玩家' + passflower.front())

} var user =

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-1tjikqxs-1596439038902)(/img/bvbkx7t)]

在佇列根據元素的優先順序從大到小進行排序

//優先佇列

var priorityqueue = function()

this.enqueue = function(element, priority)

}if(!add)

} //檢視佇列

this.getitems = function()

}var priorityqueue = new priorityqueue()

priorityqueue.enqueue('張飛', 10)

priorityqueue.enqueue('關羽', 20)

priorityqueue.enqueue('劉備', 30)

排序後

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-ai0vboag-1596439038904)(/img/bvbkx7o)]

資料結構與演算法 佇列

學習了好長 一段時間的資料結構,由於時間關係一直沒有寫部落格。這次打算將這段時間的學習內容寫下來做個整理。佇列作為線性結構的一種,其實用性不用多說。這裡總結下兩種結構的佇列實現。迴圈佇列 先列下以順序表結構形成的普通順序佇列存在的問題 隊頭不斷刪除元素,將使佇列的頭部空出單元 隨著刪除 插入的進行,...

資料結構與演算法 佇列

佇列 佇列與棧不同,它是一種先進先出的結構 實現 1 陣列 2 鍊錶 記錄的資料 1 隊首位置 第乙個元素的位置 2 隊尾位置 最後乙個元素的位置 3 佇列大小 size 佇列操作 entryqueue 入隊 exitqueue 出隊 isqueueempty 隊列為空 isqueuefull 佇列...

演算法與資料結構 佇列

adt queue d d 資料關係 r r a i d,i 2,3,n r 約定a 1a 1 a1 端為隊首,a na n an 端為隊尾。基本操作 create 建立乙個空佇列 emptyque 若隊列為空,則返回true,否則返回false insertque x 向隊尾插入元素x delet...