【栈 与 队列】

来源:互联网 发布:淘宝cf卖号是真的吗 编辑:程序博客网 时间:2024/06/03 16:07

2017 7 25    栈  队列

  

1、栈的输入 输出:

      简单的栈:

代码:

#include<cstdio>#include<stack>#include<algorithm>using namespace std;int main(){stack<int > sta;sta.push(3);sta.push(5);int x = sta.top();printf("%d\n",x);sta.pop();x = sta.top();printf("%d\n",x);return 0;}

       栈之于结构体、数组:

代码:

#include<cstdio>#include<stack>#include<algorithm>using namespace std;struct node       //node相当于int {char name[20];int age;}p[1000];        //定义了一个数组,可输入多组数据 int main(){int i,n;scanf("%d\n",&n);stack<node > s;   //定义一个栈 s for(i=0;i<n;i++){scanf("%s %d",p[i].name,&p[i].age); //先将结构体内的所有成员输入 s.push(p[i]);                       //将结构体存入已经定义好的栈中 } for(i=0;i<n;i++){node one=s.top();     //相当于int one             printf("%s %d\n",one.name,one.age);s.pop(); //记得输出一组完了要跳出 }return 0;}

2、队列:(与栈同理)

       简单的队列:

代码:

#include<cstdio>#include<queue>#include<algorithm>using namespace std;int main(){queue<int > que;que.push(3);que.push(5);int x = que.front();printf("%d\n",x);que.pop();x = que.front();printf("%d\n",x);return 0;}

       队列之于结构体、数组:

代码:

#include<cstdio>#include<queue>#include<algorithm>using namespace std;struct node{char name[20];int age;}p[1000];int main(){int i,n;scanf("%d\n",&n);queue<node > s;for(i=0;i<n;i++){scanf("%s %d",p[i].name,&p[i].age);s.push(p[i]);} for(i=0;i<n;i++){node one=s.front();printf("%s %d\n",one.name,one.age);s.pop();}return 0;}


原创粉丝点击