c++ STL學習之stack堆疊總結
阿新 • • 發佈:2019-01-07
一、標頭檔案
# include<stack>
二、定義
堆疊是一個線性表,插入和刪除只在表的一端進行。這一端稱為棧頂,另一端稱為棧底。堆疊的元素插入稱為入棧,元素的刪除則為出棧。
堆疊是一個後進先出表。
三、用法
(1)建立一個空的stack物件
stack<int> s;
(2)元素入棧
void push(const value_type& x)
在棧頂新增元素
由於c++ STL的堆疊函式是不預設大小的。因此,入棧函式就不考慮堆疊空間是否為滿,均將元素壓入堆疊,從而函式沒有標明入棧成功與否的返回值。
(3)元素出棧
void pop()
在棧的頂部移除元素
例子:將堆疊的所有元素全部出棧
// stack<int> s;
while(!s.empty())
{
s.pop(); //出棧
}
(4)計算棧物件元素個數
size_type size() const;
(5)判斷堆疊是否為空
bool empty()
返回 true 表示堆疊已空, false表示堆疊非空。
(6)返回棧頂元素
value_type& top();
const value_type& top() const;