摘要:什么是鏈?zhǔn)疥?duì)列隊(duì)列是一種先進(jìn)先出的存儲(chǔ)結(jié)構(gòu)是一種特殊的線性表,于它只允許在表的前端進(jìn)行刪除操作,而在表的后端進(jìn)行插入操作。
什么是鏈?zhǔn)疥?duì)列
隊(duì)列是一種“先進(jìn)先出”的存儲(chǔ)結(jié)構(gòu),是一種特殊的線性表,于它只允許在表的前端(front)進(jìn)行刪除操作,而在表的后端(rear)進(jìn)行插入操作。
通常隊(duì)列可以分為順序隊(duì)列和鏈?zhǔn)疥?duì)列兩種實(shí)現(xiàn),
順序隊(duì)列顧名思義就是采用順序存儲(chǔ),如以數(shù)組方式來實(shí)現(xiàn),
鏈?zhǔn)疥?duì)列采用鏈?zhǔn)酱鎯?chǔ),如以上篇說到的單向鏈表來實(shí)現(xiàn),
鏈?zhǔn)疥?duì)列是以鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的隊(duì)列
隊(duì)列有兩個(gè)基本的操作,入隊(duì)列和出隊(duì)列
代碼實(shí)現(xiàn)
鏈?zhǔn)疥?duì)列實(shí)現(xiàn)方式多種多樣,可以以單鏈表,雙向鏈表,循環(huán)鏈表等各種方式來實(shí)現(xiàn),這里以上篇提到的單鏈表的方式來實(shí)現(xiàn)。
isEmpty()) { throw new Exception("隊(duì)列為空"); } $node = parent::searchNodeByIndex(1); parent::deleteNodeByIndex(1); return $node->data; } /** * 隊(duì)列是否為空 * @return bool */ public function isEmpty() { return $this->header->next == null; } }
示例
$queue = new QueueImplementedBySingleLinkList(); $queue->enQueue("1"); $queue->enQueue("2"); $queue->enQueue("3"); $queue->enQueue("4"); var_dump($queue); echo "-----------", PHP_EOL; $queue->deQueue(); $queue->deQueue(); var_dump($queue);
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/29872.html
摘要:數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。不同類型的數(shù)據(jù)結(jié)構(gòu)編程世界中存在許多不同類型的數(shù)據(jù)結(jié)構(gòu)??梢詫⒓蠑?shù)據(jù)結(jié)構(gòu)進(jìn)行排序,并將其稱為有序集合。 數(shù)據(jù)結(jié)構(gòu)基本概念 數(shù)據(jù)元素(Data Element) 數(shù)據(jù)元素是數(shù)據(jù)的基本單位,在計(jì)算機(jī)程序中通常將其作為一個(gè)整體進(jìn)行考慮和處理。一個(gè)數(shù)據(jù)元素可由若干個(gè)數(shù)據(jù)項(xiàng)組成。 數(shù)據(jù)項(xiàng) (Data Item) 數(shù)據(jù)項(xiàng)是數(shù)據(jù)結(jié)...
摘要:中文文檔簡(jiǎn)單說,對(duì)象就是的回調(diào)函數(shù)解決方案。為了讓回調(diào)函數(shù)的名字統(tǒng)一,便于在中使用。普通操作的回調(diào)函數(shù)接口對(duì)象的最大優(yōu)點(diǎn),就是它把這一套回調(diào)函數(shù)接口,從操作擴(kuò)展到了所有操作。指定操作成功時(shí)的回調(diào)函數(shù)。 參考鏈接 jQuery API中文文檔 jQuery.Deferred jQuery.when jQuery的deferred對(duì)象詳解 jQuery deferred 對(duì)象的 prom...
摘要:棧底是固定的,而棧頂浮動(dòng)的如果棧中元素個(gè)數(shù)為零則被稱為空棧。入棧將數(shù)據(jù)保存到棧頂。鏈棧鏈棧是指棧的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),是沒有附加頭節(jié)點(diǎn)的運(yùn)算受限的單鏈表,棧頂指針是鏈表的頭指針。 一、喜歡單挑線性表 1.線性表的特性 線性表是一個(gè)線性結(jié)構(gòu),它是一個(gè)含有n≥0個(gè)節(jié)點(diǎn)的有限序列。在節(jié)點(diǎn)中,有且僅有一個(gè)開始節(jié)點(diǎn)沒有前驅(qū)并有一個(gè)后繼節(jié)點(diǎn),有且僅有一個(gè)終端節(jié)點(diǎn)沒有后繼并有一個(gè)前驅(qū)節(jié)點(diǎn)。其他的節(jié)點(diǎn)都有且...
摘要:結(jié)合實(shí)際面試,匯總自己遇到的問題,以及網(wǎng)上其他人遇到的問題,嘗試提供簡(jiǎn)潔準(zhǔn)確的答案包含安全網(wǎng)絡(luò)協(xié)議服務(wù)器業(yè)務(wù)設(shè)計(jì)線上故障個(gè)人簡(jiǎn)歷自我介紹離職原因職業(yè)規(guī)劃準(zhǔn)備問題等部分感覺不錯(cuò)的話,歡迎一般面試流程目錄閱讀體系結(jié)構(gòu)字段類型和數(shù)據(jù)類型區(qū)別 結(jié)合實(shí)際PHP面試,匯總自己遇到的問題,以及網(wǎng)上其他人遇到的問題,嘗試提供簡(jiǎn)潔準(zhǔn)確的答案包含MySQL、Redis、Web、安全、網(wǎng)絡(luò)協(xié)議、PHP、服務(wù)...
閱讀 2128·2021-09-29 09:35
閱讀 2011·2019-08-30 14:15
閱讀 3027·2019-08-30 10:56
閱讀 1017·2019-08-29 16:59
閱讀 636·2019-08-29 14:04
閱讀 1368·2019-08-29 12:30
閱讀 1089·2019-08-28 18:19
閱讀 565·2019-08-26 11:51