W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
瀏覽器的前進(jìn)后退是否是雙向鏈表實(shí)現(xiàn)?
瀏覽器的前進(jìn)后退功能本質(zhì)上是“?!钡捏w現(xiàn)。當(dāng)用戶訪問一個(gè)新頁面時(shí),該頁面會(huì)被添加到棧頂;當(dāng)用戶點(diǎn)擊后退按鈕時(shí),該頁面會(huì)從棧頂彈出。使用雙向隊(duì)列可以方便實(shí)現(xiàn)一些額外操作,這個(gè)在雙向隊(duì)列章節(jié)有提到。
在出棧后,是否需要釋放出棧節(jié)點(diǎn)的內(nèi)存?
如果后續(xù)仍需要使用彈出節(jié)點(diǎn),則不需要釋放內(nèi)存。若之后不需要用到,Java 和 Python 等語言擁有自動(dòng)垃圾回收機(jī)制,因此不需要手動(dòng)釋放內(nèi)存;在 C 和 C++ 中需要手動(dòng)釋放內(nèi)存。
雙向隊(duì)列像是兩個(gè)棧拼接在了一起,它的用途是什么?
雙向隊(duì)列就像是棧和隊(duì)列的組合,或者是兩個(gè)棧拼在了一起。它表現(xiàn)的是棧 + 隊(duì)列的邏輯,因此可以實(shí)現(xiàn)棧與隊(duì)列的所有應(yīng)用,并且更加靈活。
撤銷(undo)和反撤銷(redo)具體是如何實(shí)現(xiàn)的?
使用兩個(gè)堆棧,棧 A 用于撤銷,棧 B 用于反撤銷。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: