資料結構 C (一)基礎資料結構 1 棧和佇列

2022-09-13 07:54:10 字數 742 閱讀 3881

1.棧的特性

後進先出 last in first out

2.棧的其他性質

1)動態集合,可以插入、刪除

2)線性不迴圈結構

3.棧的性質推論

1)只有最上面的元素能被彈出

2)只能在最上面放置新元素

3)彈出的元素是最新壓入的

4)元素彈出的順序與壓入的順序相反

注意:利用陣列最為基層儲存結構,但陣列和棧的大小並沒有直接聯絡,可能有制約關係(如果沒有寫陣列擴充功能的話),棧的大小可以比陣列小,不能比陣列大。

4.棧的類實現(利用陣列)

屬性:陣列 stack【】 用於儲存資料

int top 儲存棧頂元素的陣列下標

操作:push (insert) 引數是棧名和壓入資料 無返回值

pop (delete) 引數是棧名 返回彈出的棧頂元素

empty 檢查棧是否為空

比較top與0;

full 檢查陣列是否已滿

若陣列已滿 方法一:用大的新陣列代替原來的小陣列??

方法二:起初就定義動態陣列

5.生活中的棧結構

1)餐館裡裝有彈簧的摞盤子的棧

資料結構基礎 棧

一 進製轉換 二 括號匹配 三 行編輯 stack head.h include include define stackincreament 10 define stack init size 100 define ok 1 define error 0 typedef int status ty...

資料結構(c )(1) 棧

最近在複習資料結構 我用的是資料結構與演算法分析c 描述 第三版的書,很不錯的書,有興趣的可以去看看 的相關知識,順便就做了些整理,以供參考。棧 stack 是限制插入和刪除操作只能在乙個位置進行的表,該位置是表的末端,稱為棧的頂。對棧的操作是push 入棧 和pop 出棧 前者相當於插入,後者則是...

C語言資料結構1 資料結構和演算法

如果沒有接觸過資料結構這門課程,或者說只是單單聽過這個名詞。那麼在含義方面,資料結構對於我們來說是非常陌生的。在了解一門課程之前,我們總是要知道這門課程要學習什麼。在了解資料結構之前,我們需要知道什麼是資料。對於人類來說,一切可以讓我們獲取資訊的東西都是資料。我們可以通過乙個動物的叫聲判斷是什麼動物...