日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

Queue+Stack(C++,标准库中的队列和栈)

發布時間:2024/7/5 c/c++ 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Queue+Stack(C++,标准库中的队列和栈) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

STL

Queue(先進先出)

頭文件#include

成員函數

queue::pop () //出隊列 queue::push () //入隊列 queue::size () //返回隊列中元素個數 queue::empty () //隊列為空(斷言) queue::front () //返回隊首元素 queue::back () //返回隊尾元素 queue::swap () //交換兩個相同的類型的隊列的所有元素 queue::emplace () //構建并插入元素,在堆棧頂部添加一個新元素,位于當前頂層元素上方。 這個新元素是通過構造函數的參數傳遞參數構建的。該成員函數有效地調用底層容器的成員函數emplace_back,并轉發參數。 queue::_Get_container () //獲取該對象的容器類型

demo隊列的特性

#include <iostream> #include <queue> using namespace std; int main() {queue<int> q;q.push(1);q.push(2);q.push(3);cout << "隊首:"<<q.front()<<endl<<"隊尾:"<< q.back() ; } //輸出 //隊首:1 //隊尾:3

Stack(后進先出)

頭文件#include

成員函數

stack::pop () //出棧 stack::push () //入棧 stack::size () //返回棧中元素個數 stack::empty () //棧為空(斷言) stack::top () //返回棧頂元素 stack::swap () //交換兩個相同的類型的棧的所有元素 stack::emplace () //構建并插入元素,在堆棧頂部添加一個新元素,位于當前頂層元素上方。 這個新元素是通過構造函數的參數傳遞參數構建的。該成員函數有效地調用底層容器的成員函數emplace_back,并轉發參數。 stack::_Get_container () //獲取該對象的容器類型

Swap演示

#include <iostream> #include <string> #include <queue> #include <stack> using namespace std; int main() {stack<int> s1;stack<int> s2;s1.push(1);s1.push(2);s2.push(3);s2.push(4);//s1 contains 1,2;s2 contains 3,4s1.swap(s2);cout << "s1 contains:";while (s1.size()) {//棧中仍有元素cout << s1.top()<<" ";//輸出棧頂元素s1.pop();//出棧}cout <<endl<< "s2 contains:";while (s2.size()) {cout << s2.top() << " ";s2.pop();} } //結果 //s1 contains:4 3 //s2 contains:2 1

轉載于:https://www.cnblogs.com/redo19990701/p/10683530.html

總結

以上是生活随笔為你收集整理的Queue+Stack(C++,标准库中的队列和栈)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。