您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“c++中STL庫隊列是什么意思”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“c++中STL庫隊列是什么意思”這篇文章吧。
1.queue單向隊列(先進先出,只能從尾端加元素,從頭刪元素)
使用方式:在前面加上文件名‘#include<queue>',再進行聲明'queue<int>m;''其中'<>‘里面是數組的類型,‘m'是數組的名字。
操作:
1.q.push()//入隊
2.q.pop()//讓隊首出隊
3.q.front()//獲得隊首元素
4.q.back()//獲得隊尾元素
5.q.empty() 隊列是否為空
6.q.size() 返回隊列內元素個數
#include<iostream> #include<queue> using namespace std; int main() { int i; queue<int>m; for ( i = 0;i < 5;i++) { m.push(i);//讓元素入隊 } cout << m.size() << endl;//統計m中元素的個數 for (i = 0;i < 5;i++) { cout<<m.front();//獲得隊首元素 //m.pop();//彈出隊首元素 } return 0; }
上面代碼運行后由于沒有講隊首元素給彈出,輸出的都是是一樣的,因此為了能讓m中的每一個元素輸出,我們應該及時的將隊首元素給彈出,再每次輸出第一個元素的時候及時的將它給彈出。
#include<iostream> #include<queue> using namespace std; int main() { int i; queue<int>m; for ( i = 0;i < 5;i++) { m.push(i);//讓元素入隊 } cout << m.size() << endl;//統計m中元素的個數 for (i = 0;i < 5;i++) { cout<<m.front();//獲得隊首元素 m.pop();//彈出隊首元素 } return 0; }
這樣我們就能將m中的所有元素給輸出。
2.deque雙向列隊(即能從頭部加入元素又能從尾部加入元素,元素進入按抽屜原理,最后進最先出)
使用方式:在前面加上文件名‘#include<deque>',再進行聲明‘deque<int>m;
操作:
1.q.push_back()//尾部插入
2.q.push_front()//頭部插入
3.q.pop_front()//頭部刪除
4.q.pop_back()//尾部刪除
5.q.front()//返回第一個元素
6.q.back()//返回最后一個元素
#include<iostream> #include<deque> using namespace std; int main() { int i; deque<int>m; for ( i = 0;i < 5;i++) { m.push_front(i);//讓元素從頭部入隊 } cout << m.size() << endl;//統計m中元素的個數 for (i = 0;i < 5;i++) { cout<<m.front();//獲得隊首元素 m.pop_front();//從頭部彈出隊首元素 } return 0; }
3.vector(長度可變的數組)
使用方法:在前面加上文件名‘#include<vector>',再進行聲明‘vector<int>m;'。
操作
1.m.push_back()//輸入元素
2.m.pop_back()//刪除最后一個元素
3.m.size()//得到vector的大小
4.m.clear()//清空容器中所有數據
5.m.empty()//判斷vector是否為空
6.m.front()//引用第一個元素
7.m.back()//引用最后一個元素
#include<iostream> #include<vector> using namespace std; int main() { int i; vector<int>m; for ( i = 0;i < 5;i++) { m.push_back(i);//讓元素入隊 } cout << m.size() << endl;//得到vector容器的大小 for (i = 0;i < 5;i++) { cout << m.back();//獲得尾部元素 m.pop_back();//從尾部彈出元素 } cout << endl; for (i = 0;i < 5;i++) { m.push_back(i); } cout << m.size() << endl; m.clear();//清除m中所有元素 cout << m.size() << endl; return 0; }
以上是“c++中STL庫隊列是什么意思”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。