标签:栈和队列 front namespace stream mes 类型 进入 main out
std::stack的成员函数:
push():栈顶插入元素
pop():删除栈顶元素
empty():检查栈是否为空病返回一个布尔值
size():返回栈的元素数量
top():获得栈顶元素
1 #include <iostream> 2 #include <stack> 3 4 using namespace std; 5 6 //使用stl标准库对栈进行操作 7 int main() 8 { 9 stack<int>intstack; //实例化整型的栈 10 //stack<double>dbstack; 实例化双精度类型 11 12 //有关于栈的成员函数 13 cout << "pushing 25, 10, -5, 1 on stack" << endl; 14 intstack.push(25); //压栈操作 15 intstack.push(10); 16 intstack.push(-5); 17 intstack.push(1); 18 19 cout << "the stack contains " << intstack.size() << " elements" << endl;//size()提取栈的数据容量 20 while (intstack.size() != 0) 21 { 22 cout << "poping the topmost element " << intstack.top() << endl; //top()提取栈顶元素 23 intstack.pop(); //pop()弹出栈顶元素 24 } 25 if (intstack.empty()) //如果栈已空,该函数值为1 26 cout << "poping all elements" << endl; 27 28 system("pause"); 29 return 0; 30 }
std::queue的成员函数:
push():在队尾插入一个元素
pop():删除队头的元素
front():获得队头元素
back():获得队尾元素
empty():检查队列是否为空病返回一个布尔值
size():返回队列的元素数量
1 #include <iostream> 2 #include <queue> 3 4 using namespace std; 5 6 queue<int>Q; //实例化整型的队列 7 //queque<double>IQ; //实例化双精度类型的队列 8 9 int main() 10 { 11 cout << "inserting 10,5,-1,2 into queque" << endl; 12 Q.push(10); //从队尾进入队列 13 Q.push(5); 14 Q.push(-1); 15 Q.push(2); 16 17 cout << "queque contains " << Q.size() << " elements"<<endl; 18 cout << "element at front: " << Q.front() << endl; //输出队头 19 cout << "element at back: " << Q.back() << endl; //输出队尾 20 21 while (Q.size() != 0) 22 { 23 cout << "delete the element: " << Q.front() << endl; 24 Q.pop(); //从队头出队 25 } 26 27 if (Q.empty()) 28 cout << "the queue is now empty" << endl; 29 30 system("pause"); 31 return 0; 32 }
标签:栈和队列 front namespace stream mes 类型 进入 main out
原文地址:https://www.cnblogs.com/breeze-H/p/13797207.html