1.队列(先进先出)
queue<ElemType> MyQueue; | 进行队列初始化 |
myqueue.push(elem); | 向队尾添加添加元素 |
myqueue.pop(); | 从队头移除一个元素 |
myqueue.front(); | 返回队头元素 |
myqueue.back(); | 返回队尾元素 |
myqueue.empty(); | 判断队列是否为空 |
myqueue.size(); | 返回队列大小 |
#include <bits/stdc++.h>
using namespace std;
int main()
{
int arr[5]={1,2,3,45,5};
queue<int> myq;
for(int i=0;i<5;i++){
myq.push(arr[i]);
}
if(!myq.empty()){
cout<<"队列大小为"<<myq.size()<<endl;
cout<<"第一个元素为:"<<myq.front()<<endl;
cout<<"最后一个元素为:"<<myq.back()<<endl;
}
while(!myq.empty()){
cout<<"当前元素为:"<<myq.front()<<endl;
myq.pop();
}
return 0;
}
2.栈(先进后出)
stack<ElemType> mystack; | 初始化 |
mystack.push(elem); | 压入元素 |
mystack.pop(); | 移除栈顶元素 |
mystack.top(); | 返回栈顶元素 |
mystack.empty(); | 判断栈是否为空 |
mystack.size(); | 返回栈的大小 |
#include <bits/stdc++.h>
using namespace std;
int main()
{
int arr[5]={1,2,3,45,5};
stack<int> s;
for(int i=0;i<5;i++){
s.push(arr[i]);
}
if(!s.empty()){
cout<<"栈的大小为:"<<s.size()<<endl;
cout<<"栈顶元素为:"<<s.top()<<endl;
}
cout<<endl;
while(!s.empty()){
cout<<"当前元素为:"<<s.top()<<endl;
s.pop();
}
return 0;
}