棧(stack)
有些地方稱為堆棧,是一種容器,可以存入數(shù)據(jù)元素,訪問元素,刪除元素,它的特點(diǎn)在于只能允許容器的一端? ? (稱為棧頂端指標(biāo):top),進(jìn)行加入數(shù)據(jù)(push)和輸出數(shù)據(jù)(pop)的運(yùn)算。沒有了位置的概念,保證任何時(shí)候都可以訪問,刪除的元素都是此前最后存入的那個(gè)元素,確定了一種默認(rèn)的訪問順序。
由于棧數(shù)據(jù)結(jié)構(gòu)只允許在一端進(jìn)行操作,因而按照后入先出(LIFO,全面last in first out)的原理運(yùn)作
棧的實(shí)現(xiàn)
隊(duì)列(queue):
1、只允許在一端進(jìn)行插入操作,而在另一端進(jìn)行刪除(或取出)的操作
2、隊(duì)列是一種先進(jìn)先出的(first in first out)的線性表,簡稱FIFO。允許插入的一端為隊(duì)尾,允許刪除的一端為隊(duì)首、
3、隊(duì)列不允許在中間進(jìn)行插入操作。
q = (a1, a2.....an)?
a1為隊(duì)首,刪除總是在這一端,an為隊(duì)尾,屬于添加(插入)端