摘要:隊(duì)列隊(duì)列是遵循先進(jìn)先出原則的一組有序的項(xiàng)。最新添加的元素必須排在隊(duì)列的末尾。創(chuàng)建隊(duì)列首先需要一個(gè)用于存儲(chǔ)隊(duì)列中元素的數(shù)據(jù)結(jié)果。隊(duì)列的方法向隊(duì)列尾部添加一個(gè)或多個(gè)的項(xiàng)。返回隊(duì)列包含的元素個(gè)數(shù)。
隊(duì)列
隊(duì)列是遵循FIFO(First In First Out, 先進(jìn)先出)原則的一組有序的項(xiàng)。隊(duì)列在尾部添加新元素,并從頂部移除元素。最新添加的元素必須排在隊(duì)列的末尾。
創(chuàng)建隊(duì)列首先需要一個(gè)用于存儲(chǔ)隊(duì)列中元素的數(shù)據(jù)結(jié)果。
function Queue(){ var items = []; }
隊(duì)列的方法
enqueue(element) -- 向隊(duì)列尾部添加一個(gè)或多個(gè)的項(xiàng)。
dequeue() -- 移除隊(duì)列的第一(即排在隊(duì)列最前面的)項(xiàng),并返回被移除的元素。
front() -- 返回隊(duì)列中第一個(gè)元素,也就是最先被移除的元素。隊(duì)列不坐任何編訂。
isEmpty()--隊(duì)列是否包含元素。
size() -- 返回隊(duì)列包含的元素個(gè)數(shù)。
function Queue(){ var items = (); this.enqueue = function(element){ items.push(element); } this.dequque = function(){ items.shift(); } this.font = function(){ return items[0]; } this.isEmpty = function(){ return items.length==0; } this.size = function(){ return item.length; } }優(yōu)先隊(duì)列
優(yōu)先隊(duì)列就是元素的添加和移除是基于一個(gè)優(yōu)先級(jí)的。在現(xiàn)實(shí)中的例子就是很多時(shí)候機(jī)場(chǎng)登機(jī)的順序,是頭等艙的乘客和商務(wù)艙的乘客優(yōu)先級(jí)高于經(jīng)濟(jì)艙的乘客??梢韵鹊菣C(jī)。
實(shí)現(xiàn)一個(gè)優(yōu)先隊(duì)列,有兩種選項(xiàng):設(shè)置優(yōu)先級(jí),然后再正確的位置添加元素;或者用入列操作添加元素,然后按照優(yōu)先級(jí)移除它們。我們將會(huì)在正確的位置添加元素。
function PriorityQueue(){ var items = (); function QueueElement(element, priority){ this.element = element; this.proiority = priority; } this.enqueue = function(element, priority){ var queueElement = new QueueElement(element, priority); if(this.isEmpty()){ item.push(queueElement); } else { var added = false; for(var i=0;i參考書(shū)籍:Learning Javascript Data Structures and Algorithms
推薦一個(gè)找vue,angular組件的輪子工廠
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/88423.html
摘要:年求職面經(jīng)及總結(jié)我的求職之路差不多走到盡頭了感覺(jué)真是精疲力盡了把這大半年的經(jīng)歷和面試總結(jié)寫(xiě)下來(lái)希望能給和我一樣在求職路上煎熬的人一點(diǎn)幫助先說(shuō)背景微電子科學(xué)與工程專(zhuān)業(yè)學(xué)過(guò)兩門(mén)和相關(guān)的課程語(yǔ)言和單片機(jī)這個(gè)專(zhuān)業(yè)的唯一好處就是大部分人并不知道這個(gè)專(zhuān) 18年求職面經(jīng)及總結(jié) 我的求職之路差不多走到盡頭了,感覺(jué)真是精疲力盡了.把這大半年的經(jīng)歷和面試總結(jié)寫(xiě)下來(lái),希望能給和我一樣在求職路上煎熬的人一點(diǎn)幫...
摘要:年求職面經(jīng)及總結(jié)我的求職之路差不多走到盡頭了感覺(jué)真是精疲力盡了把這大半年的經(jīng)歷和面試總結(jié)寫(xiě)下來(lái)希望能給和我一樣在求職路上煎熬的人一點(diǎn)幫助先說(shuō)背景微電子科學(xué)與工程專(zhuān)業(yè)學(xué)過(guò)兩門(mén)和相關(guān)的課程語(yǔ)言和單片機(jī)這個(gè)專(zhuān)業(yè)的唯一好處就是大部分人并不知道這個(gè)專(zhuān) 18年求職面經(jīng)及總結(jié) 我的求職之路差不多走到盡頭了,感覺(jué)真是精疲力盡了.把這大半年的經(jīng)歷和面試總結(jié)寫(xiě)下來(lái),希望能給和我一樣在求職路上煎熬的人一點(diǎn)幫...
摘要:鏈表前端的面試中,鏈表還是經(jīng)常會(huì)被問(wèn)到。這種數(shù)據(jù)結(jié)構(gòu)非常方便,提供了便利店語(yǔ)法來(lái)訪問(wèn)它的元素。參考書(shū)籍推薦一個(gè)找組件的輪子工廠前端面試總結(jié)數(shù)據(jù)結(jié)構(gòu)與算法一前端面試總結(jié)數(shù)據(jù)結(jié)構(gòu)與算法二前端面試總結(jié)數(shù)據(jù)結(jié)構(gòu)與算法三 鏈表 前端的面試中,鏈表還是經(jīng)常會(huì)被問(wèn)到。所以熟悉鏈表的結(jié)果以及鏈表操作的方法還是很重要的。說(shuō)道存儲(chǔ)多個(gè)元素,數(shù)組可能是最常用的數(shù)據(jù)結(jié)構(gòu)。這種數(shù)據(jù)結(jié)構(gòu)非常方便,提供了便利店[]...
摘要:結(jié)構(gòu)的實(shí)例的方法,用于對(duì)每個(gè)成員執(zhí)行某種操作,沒(méi)有返回值。參考和數(shù)據(jù)結(jié)構(gòu)推薦一個(gè)找組件的輪子工廠前端面試總結(jié)數(shù)據(jù)結(jié)構(gòu)與算法一前端面試總結(jié)數(shù)據(jù)結(jié)構(gòu)與算法二前端面試總結(jié)數(shù)據(jù)結(jié)構(gòu)與算法三前端面試總結(jié)數(shù)據(jù)結(jié)構(gòu)與算法四 集合 集合是由一組無(wú)序且唯一的項(xiàng)組成。這個(gè)數(shù)據(jù)結(jié)構(gòu)使用了與有限集合相同的數(shù)學(xué)概念。 創(chuàng)建一個(gè)集合 function Set(){ var items = {}; } ...
閱讀 2404·2023-04-25 20:07
閱讀 3330·2021-11-25 09:43
閱讀 3703·2021-11-16 11:44
閱讀 2554·2021-11-08 13:14
閱讀 3204·2021-10-19 11:46
閱讀 922·2021-09-28 09:36
閱讀 3038·2021-09-22 10:56
閱讀 2410·2021-09-10 10:51