棧和隊(duì)列的計(jì)算 簡(jiǎn)述棧和隊(duì)列的差別?
簡(jiǎn)述棧和隊(duì)列的差別?1、運(yùn)算規(guī)則不同,棧是只允許在一端進(jìn)行插入、刪除運(yùn)算,因而是后進(jìn)先出表LIFO;隊(duì)列是只允許在一端進(jìn)行插入、另一端進(jìn)行刪除運(yùn)算,因而是先進(jìn)先出表FIFO。2、用途不同,棧用于子程調(diào)
簡(jiǎn)述棧和隊(duì)列的差別?
1、運(yùn)算規(guī)則不同,棧是只允許在一端進(jìn)行插入、刪除運(yùn)算,因而是后進(jìn)先出表LIFO;隊(duì)列是只允許在一端進(jìn)行插入、另一端進(jìn)行刪除運(yùn)算,因而是先進(jìn)先出表FIFO。
2、用途不同,棧用于子程調(diào)用和保護(hù)現(xiàn)場(chǎng),隊(duì)列用于多道作業(yè)處理、指令寄存及其他運(yùn)算等等。
數(shù)組在內(nèi)存中是存在在棧還是隊(duì)列里面?
內(nèi)存有棧的說(shuō)法么?棧是CPU里面的東東,用來(lái)存儲(chǔ)即將執(zhí)行的命令,而隊(duì)列,就是棧的隊(duì)伍了,一個(gè)一個(gè)命令來(lái)執(zhí)行
至于你說(shuō)的數(shù)組,當(dāng)然是存放在內(nèi)存里面的了,數(shù)組也普通變量是一個(gè)概念,只不過(guò)他們是排列起來(lái)的
打個(gè)比方,一個(gè)房子叫變量,一排房子叫單維數(shù)組,一個(gè)小區(qū)的房子叫三維數(shù)組,這樣理解吧,他們無(wú)非都得在地上
我擦,剛看到你的追問(wèn),你這問(wèn)題沒(méi)問(wèn)清楚,壓根就別和內(nèi)存扯上關(guān)系好么?CPU是有存儲(chǔ)區(qū)域,但是那不叫內(nèi)存
ABCDEFG依次輪流入棧和入隊(duì),又依次退隊(duì)和出棧是什么意思啊,到底怎么入和出?
所謂棧,即先入后出順序;隊(duì),則是先入先出ABCDEFG順序入棧,出棧順序是GFEDCBA,倒序出棧,先入的后出,后入的先出ABCDEFG順序入隊(duì),出隊(duì)順序是ABCD
隊(duì)列,堆棧與數(shù)組,鏈表的關(guān)系與區(qū)分?
棧和隊(duì)列都可以用數(shù)組實(shí)現(xiàn),也都可以用鏈表實(shí)現(xiàn)!廣義上講棧也是隊(duì)列!這二者都是一種順序表結(jié)構(gòu)!
棧又叫先進(jìn)后出隊(duì)列,也可稱作后進(jìn)先出隊(duì)列,隊(duì)列又叫先進(jìn)先出隊(duì)列!這二者統(tǒng)稱單進(jìn)單出隊(duì)列!
棧屬于單端隊(duì)列!隊(duì)列是單進(jìn)單出的雙端隊(duì)列!另外還有一種雙進(jìn)雙出的雙端隊(duì)列!這三種隊(duì)列都屬于線性表!可以用數(shù)組或鏈表來(lái)實(shí)現(xiàn)!除了常用的動(dòng)態(tài)鏈表外還可以用靜態(tài)鏈表實(shí)現(xiàn)!
靜態(tài)鏈表是用數(shù)組和游標(biāo)(一個(gè)整數(shù),用來(lái)代替指針的)來(lái)實(shí)現(xiàn)!PS:棧(LIFO或FILO),隊(duì)列(FIFO),雙進(jìn)雙出隊(duì)列(deque)是隊(duì)列的三種形式,棧是單端隊(duì)列,先進(jìn)后出!隊(duì)列單進(jìn)單出的雙端隊(duì)列FIFO,雙隊(duì)列deque是雙進(jìn)雙出的雙端隊(duì)列!
這是棧和隊(duì)列的關(guān)系!
都是線性表(順序表)線性表(順序表)可以用數(shù)組,鏈表(動(dòng)態(tài)鏈表),靜態(tài)鏈表三種實(shí)現(xiàn)!
這是他們和數(shù)組的關(guān)系!