您好,登錄后才能下訂單哦!
小編給大家分享一下python中的堆棧是指什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
堆棧是一種執(zhí)行“后進(jìn)先出”算法的數(shù)據(jù)結(jié)構(gòu)。
設(shè)想有一個(gè)直徑不大、一端開口一端封閉的竹筒。有若干個(gè)寫有編號(hào)的小球,小球的直徑比竹筒的直徑略小?,F(xiàn)在把不同編號(hào)的小球放到
竹筒里面,可以發(fā)現(xiàn)一種規(guī)律:先放進(jìn)去的小球只能后拿出來,反之,后放進(jìn)去的小球能夠先拿出來。所以“先進(jìn)后出”就是這種結(jié)構(gòu)的特點(diǎn)。
堆棧是計(jì)算機(jī)中最常用的一種數(shù)據(jù)結(jié)構(gòu),比如函數(shù)的調(diào)用在計(jì)算機(jī)中是用堆棧實(shí)現(xiàn)的。 堆??梢杂脭?shù)組存儲(chǔ),也可以用以后會(huì)介紹的鏈表存儲(chǔ)。
堆棧就是這樣一種數(shù)據(jù)結(jié)構(gòu)。它是在內(nèi)存中開辟一個(gè)存儲(chǔ)區(qū)域,數(shù)據(jù)一個(gè)一個(gè)順序地存入(也就是“壓入——push”)這個(gè)區(qū)域之中。
有一個(gè)地址指針總指向最后一個(gè)壓入堆棧的數(shù)據(jù)所在的數(shù)據(jù)單元,存放這個(gè)地址指針的寄存器就叫做堆棧指示器。開始放入數(shù)據(jù)的單元叫
做“棧底”。數(shù)據(jù)一個(gè)一個(gè)地存入,這個(gè)過程叫做“壓棧”。在壓棧的過程中,每有一個(gè)數(shù)據(jù)壓入堆棧,就放在和前一個(gè)單元相連的后面一個(gè)單元中,堆棧指示器中的地址自動(dòng)加1。讀取這些數(shù)據(jù)時(shí),按照堆棧指示器中的地址讀取數(shù)據(jù),堆棧指示器中的地址數(shù)自動(dòng)減 1。這個(gè)過程叫做“彈出pop”。如此就實(shí)現(xiàn)了后進(jìn)先出的原則。
看完了這篇文章,相信你對(duì)python中的堆棧是指什么有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。