什么是棧? 棧的定義是什么
棧又名堆棧,它是一種運(yùn)算受限的線性表 。其限制是僅允許在表的一端進(jìn)行插入和刪除運(yùn)算 。這一端被稱為棧頂,相對地,把另一端稱為棧底 。向一個棧插入新元素又稱作進(jìn)棧、入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素;從一個棧刪除元素又稱作出棧或退棧,它是把棧頂元素刪除掉,使其相鄰的元素成為新的棧頂元素 。
【什么是棧? 棧的定義是什么】
棧是用來存放基本類型的變量數(shù)據(jù)和對象的引用,但對象本身不存放在棧中,而是存放在堆(new出來的對象)或者常量池中(字符串常量對象存放的常量池中) 。當(dāng)程序進(jìn)入一個方法時(shí) , 會為這個方法單獨(dú)分配一塊私屬存儲空間,用于存儲這個方法內(nèi)部的局部變量,當(dāng)這個方法結(jié)束時(shí),分配給這個方法的棧會被釋放,這個棧中的變量也將隨之釋放 。棧作為一種數(shù)據(jù)結(jié)構(gòu),是一種只能在一端進(jìn)行插入和刪除操作的特殊線性表 。它按照后進(jìn)先出的原則存儲數(shù)據(jù),先進(jìn)入的數(shù)據(jù)被壓入棧底,最后的數(shù)據(jù)在棧頂 , 需要讀數(shù)據(jù)的時(shí)候從棧頂開始彈出數(shù)據(jù)(最后一個數(shù)據(jù)被第一個讀出來) 。
棧具有記憶作用 , 對棧的插入與刪除操作中,不需要改變棧底指針 。棧是允許在同一端進(jìn)行插入和刪除操作的特殊線性表 。允許進(jìn)行插入和刪除操作的一端稱為棧頂(top),另一端為棧底(bottom);棧底固定,而棧頂浮動;棧中元素個數(shù)為零時(shí)稱為空棧 。插入一般稱為進(jìn)棧(PUSH),刪除則稱為退棧(POP) 。棧也稱為后進(jìn)先出表 。
推薦閱讀
- 棧屬于什么數(shù)據(jù)結(jié)構(gòu) 棧屬于什么結(jié)構(gòu)
- 合場分卷是什么意思 分卷是什么意思
- 免燙襯衫材質(zhì) 免燙襯衫的面料是什么
- 本田cruise怎么使用 本田cruise怎么用
- 中國印章藝術(shù)始于什么時(shí)候 中國印章藝術(shù)始于哪個朝代
- 涂鴉衛(wèi)衣配什么褲子好看 黑色衛(wèi)衣配什么褲子好看
- 調(diào)內(nèi)分泌的最快最好的方法 調(diào)內(nèi)分泌的最快最好的方法能吃什么藥
- 煮玉米水可以喝嗎有什么功效 煮玉米水禁忌
- 調(diào)養(yǎng)腸胃最好方法吃什么保健品 調(diào)養(yǎng)腸胃最好方法
- 什么的小蝦 什么的小蝦?
