3 1棧的定義

2021-10-06 06:08:51 字數 670 閱讀 9286

作為一種限定性線性表,是將線性表的插入和刪除運算限制為僅在表的一端進行。

棧頂:通常將表中允許進行插入、刪除操作的一端稱為棧頂 (top),因此棧頂的當前位 置是動態變化的,它由乙個稱為棧頂指標的位置指示器指示。

棧底:同時表的另一端被稱為棧底 (bottom)。當棧中沒有元素時稱為空棧。棧的插入 操作被形象地稱為進棧或入棧,刪除操作稱為出棧或退棧。

根據上述定義,每次進棧的元素都被放在原棧頂元素之上而成為新的棧頂,而每次出棧 的總是當前棧中「最新」的元素,即最後進棧的元素。在下圖所示的棧中,元素是以 a1, a2,a3,…,an 的順序進棧的,而退棧的次序卻是 an,…,a3,a2,a1。棧的修改是按後 進先出的原則進行的。因此,棧又稱為後進先出的線性表,簡稱為 lifo 表。在日常生活中 也可以見到很多「後進先出」的例子,例如,手***夾中的子彈,子彈的裝入與子彈彈出膛均在彈夾的最上端進行,先裝入的子彈後發出,而後裝入的子彈先發出。

資料元素:可以是任意型別的資料,但必須屬於同乙個資料物件。

結構關係:棧中資料元素之間是線性關係。

基本操作:

3 1 函式的定義與呼叫

函式是c 程式的基本組成模組。通過函式,可以把乙個複雜任務分解成為若干個易於解決的小任務。充分體現結構化程式設計由粗到精,逐步細化的設計思想。什麼是函式 函式是c 程式的基本組成模組。組成c 程式的若干函式中,有乙個main winmain 函式,是程式執行的入口,它可以呼叫其他函式。而其他一般函式...

3 1 資料型別的定義

資料型別決定了乙個資料的特徵,即限定了該資料必須按照一定的規則進行操作。在程式設計中也 是如此,特定資料型別的資料會有其相應的行為模式。j ascript 中有以下 5 種基本資料型別。3.1.1 在資料型別方面與 j a 作比較 動態資料型別與靜態資料型別像 j a 這樣,變數具有資料型別的語言,...

棧的定義,順序棧,鏈式棧

棧又名堆疊,是資料暫時儲存的地方。它一種只能在頂端進行插入和刪除操作的特殊線性表,它按照先進後出的原則儲存資料,先進的資料被壓入棧底,最後的資料在棧頂,需要讀取資料的時候從棧頂開始彈出資料。棧具有記憶作用,對棧的插入和刪除操作中,不需要改變棧底指標。棧中允許進行插入和刪除操作的一端稱為棧頂 top ...