棧(stack)又名堆疊,它是一種運算受限的線性表。限定僅在表尾進行插入和刪除操作的線性表。這一端被稱為棧頂,相對地,把另一端稱為棧底。向乙個棧插入新元素又稱作進棧、入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素;從乙個棧刪除元素又稱作出棧或退棧,它是把棧頂元素刪除掉,使其相鄰的元素成為新的棧頂元素。
棧的定義可知,這種結構的基本性質綜述如下:
(1)集合性。棧是由若干個元素集合而成,當沒有元素的空集合稱為空棧;
(2)線性結構。除棧底元素和棧頂元素外,棧中任一元素均有唯一的前驅元素和後繼元素;
(3)受限制的運算。只允許在棧頂實施壓入或彈出操作,且棧頂位置由棧指標所指示;
(4)數學性質。當多個編號元素依某種順序壓入,且可任意時刻彈出時,所獲得的編號元素排列的數目,恰好滿足卡塔南數列的計算,即:
cn=cn2n/(n+1)
其中,n為編號元素的個數,cn是可能的排列數目。
資料結構之棧的基本概念
棧是允許在一端進行插入或者刪除操作的線性表。它是一種線性表,但是限定這種線性表只能在某一端進行插入和刪除操作。棧頂 top 線性表允許進行插入刪除的那一端。棧底 botton 固定的,不允許進行插入和刪除的另一端。空棧 不含任何元素的空表。假設某個棧s 如圖,a1為棧底元素,a5為棧頂元素。由於棧只...
資料結構之樹的基本概念 性質
樹的定義 n個節點組成的有限集合。n 0,空樹 n 0,1個根節點,m個互不相交的有限集,每個子集為根的子樹。1 基本術語 節點的度 樹中某個節點的子樹的個數。樹的度 樹中各節點的度的最大值。分支節點 度不為零的節點。葉子節點 度為零的節點。路徑 i j 路徑長度 路徑經過節點數目減1。孩子節點 某...
資料結構基本概念
是指相互之間具有 存在 一定聯絡 關係 的資料元素的集合。元素之間的相互聯絡 關係 稱為邏輯結構。資料元素之間的邏輯結構。元素之間的邏輯結構有四種基本型別 集合 結構中的資料元素除了 同屬於乙個集合 外,沒有其它關係。線性結構 結構中的資料元素之間存在一對一的關係。樹型結構 結構中的資料元素之間存在...