日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

C++?stack與queue使用方法詳細講解_C 語言

作者:川入 ? 更新時間: 2023-02-10 編程語言

Stack的介紹和使用

stack的文檔介紹

stack是一種容器適配器,專門用在具有后進先出操作的上下文環境中,其刪除只能從容器的一端進行元素的插入與提取操作。 stack是作為容器適配器被實現的,容器適配器即是對特定類封裝作為其底層的容器,并提供一組特定的成員函數來訪問其元素,將特定類作為其底層的,元素特定容器的尾部(即棧頂)被壓入和彈出。

stack的默認定義的模板

注意:

默認情況下stack是以deque作為底層容器。

(大多數情況下都是使用queue作為底層容器即可,我們需要變動的只是存儲類型)

方式一:規定的存儲類型

//int類型
stack<int> st1;
//double類型
stack<double> st2;

方式二:規定底層實現容器

//用list
stack<int, list<int>> st1;
//用vector
stack<int, vector<int>> st2;

stack的使用

函數說明 接口說明
empty() 檢測stack是否為空
size() 返回stack中元素的個數
top() 返回棧頂元素的引用
push() 將元素val壓入stack中
pop() 將stack中尾部的元素彈出
#include<iostream>
#include<stack>
using namespace std;
int main() {
	stack<int> st;
	for (int i = 0; i < 10; i++) {
		st.push(i);
	}
	//0 1 2 3 4 5 6 7 8 9
	cout << st.size() << endl;//輸出:10
	while (!st.empty()) {
		cout << st.top() << " ";
		st.pop();
	}
	cout << endl; //輸出:9 8 7 6 5 4 3 2 1 0
	return 0;
}

queue的介紹和使用

queue的文檔介紹

隊列是一種容器適配器,專門用于在FIFO上下文(先進先出)中操作,其中從容器一端插入元素,另一端提取元素。 隊列作為容器適配器實現,容器適配器即將特定容器類封裝作為其底層容器類,queue提供一組特定的成員函數來訪問其元素。元素從隊尾入隊列,從隊頭出隊列。

queue的默認定義的模板

注意:

默認情況下queue是以deque作為底層容器。

(大多數情況下都是使用queue作為底層容器即可,我們需要變動的只是存儲類型)

方式一:規定的存儲類型

//int類型
queue<int> st1;
//double類型
queue<double> st2;

方式二:規定底層實現容器

//用list
stack<int, list<int>> st1;
//用vector
stack<int, vector<int>> st2;

queue的使用

函數聲明 接口說明
empty() 檢測隊列是否為空,是返回true,否則返回false
size() 返回隊列中有效元素的個數
front() 返回隊頭元素的引用
back() 返回隊尾元素的引用
push() 在隊尾將元素val入隊列
pop() 將隊頭元素出隊列
#include <iostream>
#include <queue>
using namespace std;
int main(){
	queue<int> q;
	for (int i = 0; i < 10; i++) {
		q.push(i);
	}
	//0 1 2 3 4 5 6 7 8 9
	cout << q.size() << endl; //輸出:10
	while (!q.empty()){
		cout << q.front() << " ";
		q.pop();
	}
	cout << endl; //輸出:0 1 2 3 4 5 6 7 8 9
	return 0;
}

原文鏈接:https://blog.csdn.net/weixin_64609308/article/details/127638775

欄目分類
最近更新