一 、棧
棧:是限定僅在表尾進行插入或刪除操作的線性表,表尾段稱為棧頂,表頭段稱為棧底,棧有稱後進先出線性表。棧有順序棧和鏈棧。
個人總結:棧的操作可以在陣列的基礎上,也可以運用stack。
陣列的操作就不多說了,現在總結一下stack。
stack基本應用。
標頭檔案 #include
stack stack;
stack.empty() 堆疊為空則返回真
stack.pop() 移除棧頂元素
stack.push() 在棧頂增加元素
stack.size() 返回棧中元素數目
stack.top() 返回棧頂元素
二、佇列
queue是一種先入先出的容器。(這裡要知道區別於棧)。
標頭檔案 #include
queue q;
queue的基本應用。
push(t) 將t元素插進隊尾。
pop()隊首元素出隊。
front()訪問隊首元素。
back()訪問隊尾元素。
empty()判斷是否為佇列是否為空,如果空返回true,否則返回false
size()返回容器元素數量。
clear()清空佇列。
三、雙向佇列
deque的基本操作
push_back
在當前的最後乙個元素之後 ,在 deque 容器的末尾新增乙個新元素
push_front
在 deque 容器的開始位置插入乙個新的元素,位於當前的第乙個元素之前
pop_back
刪除 deque 容器中的最後乙個元素,有效地將容器大小減少乙個
pop_front
刪除 deque 容器中的第乙個元素,有效地減小其大小
emplace_front
在 deque 的開頭插入乙個新的元素,就在其當前的第乙個元素之前
emplace_back
在 deque 的末尾插入乙個新的元素,緊跟在當前的最後乙個元素之後
deque.front()
返回第乙個資料。
deque.back()
返回最後乙個資料
其實還有很多關於deque的操作,暫時還沒學到,先不寫了。。
紙牌遊戲 小貓釣魚(佇列和棧的基本應用)
首先給小哼和小哈發牌,然後按照先小哼後小哈的出牌順序出牌。出牌時,若某人打出的牌面與桌子上的某張牌面相同,則這個人將兩張相同和之間的牌全部取走,並依次放在自己手中牌的末尾。當任意一人手中的牌全部取完時,遊戲結束,對手獲勝。include stdio.h struct queue struct sta...
C RabbitMQ訊息佇列基本應用
安裝otp與mq步驟 1.安裝otp,新增環境變數erlang home並新增到path中 2.安裝mq,新增環境變數rabbitmq server並新增到path中 rabbitmq server sbin 3.使用管理員許可權到rabbitmqsbin目錄中 執行rabbitmq plugins...
鏈式儲存棧及基本應用
實驗二 棧 佇列 實驗學時 學時 背景知識 入棧 出棧,入隊 出隊。目的要求 1 掌握棧 佇列的思想及其儲存實現。2 掌握棧 佇列的常見演算法的程式實現。實驗內容 1 採用鏈式儲存實現棧的初始化 入棧 出棧操作。2 採用順序儲存實現棧的初始化 入棧 出棧操作。3 採用鏈式儲存實現佇列的初始化 入隊 ...