棧與佇列的基礎知識點

2021-08-14 22:41:31 字數 859 閱讀 4661

《棧》 棧(stack)又名堆疊,它是一種特殊的線性表。元素之間成線性結構。在c++中其標頭檔案為

特性:運算受限制,只允許在棧頂進行插入刪除操作,插入叫做進棧,入棧或者壓棧(push),刪除叫做出棧(pop),由於有這種特性,所以著名特點是後進先出。

定義:stacks

現在展示一道題進行講解吧,話不多說請看題,杭電acm題

根據題目要求,我們很清楚的知道,這就是乙個關於棧的應用,當一輛輛列車進去之後,只能當後面的列車出來了,最前面的車才可以出來。正好符合棧的特性,因此,我們可以定義乙個棧來模擬這個過程

完整**如下:

#include#include#includeusing namespace std;

int main()

if (!s.empty()&&s.top()!=out[j])//當棧不空且棧頂不為當前出棧的元素時繼續輸入

if (!s.empty()&&s.top() == out[j])//棧不空且和當前出棧元素相等時進行pop

}if (s.empty())

for(int i=0; i

system("pause"); 

return 0;

}輸出結果:

現在 queue 是否 empty? 1

myq.size():10

0myq.size():9

1myq.size():8

2myq.size():7

3myq.size():6

4請按任意鍵繼續. . .

棧與佇列知識點

一 讀取 include include 棧的標頭檔案 using namespace std intmain 輸入 123 輸出 123 二 刪除 include include 棧的標頭檔案 using namespace std intmain 輸入 123 456 輸出 123 三 判斷棧的...

基礎知識點

1 inline block布局 2 table布局 3 justify的末行不對齊 4 兩個圖示之間有空格 換行 5 背景中的的 路徑的 全部斜槓都為 不是 命令列下的這種 doctype html html head meta charset utf 8 title xx title head ...

棧和佇列 知識點

在c 標準庫 stl 中,實現了棧和佇列,方便使用,並提供了若干方法。以下作簡要介紹。1 棧 stack 說明及舉例 使用棧,要先包含標頭檔案 include 定義棧,以如下形式實現 stacks 其中type為資料型別 如 int,float,char等 棧的主要操作 s.push item 將i...