当前位置: 首页 > wzjs >正文

网站模版超市天门seo

网站模版超市,天门seo,wordpress更换链接自动跳转,建网站怎么上线本专栏持续输出数据结构题目集,欢迎订阅。 文章目录题目代码题目 一个队列(先进先出结构)可以用两个堆栈(后进先出结构)来实现,方法如下: 1.从两个空堆栈 s1 和 s2 开始。 2.当元素 e 入队时&…

本专栏持续输出数据结构题目集,欢迎订阅。

文章目录

    • 题目
    • 代码

题目

一个队列(先进先出结构)可以用两个堆栈(后进先出结构)来实现,方法如下:

1.从两个空堆栈 s1 和 s2 开始。
2.当元素 e 入队时,它实际上是被推入到 s1。
3.当我们需要出队时,首先检查 s2。如果 s2 是空的,则把 s1 中的元素全部导入 s2,即将每个元素从 s1​ 弹出后马上推入 s2​。然后从 s2​ 中弹出元素 —— s2 顶端元素一定是第一个进入 s1 的,所以是应该出列的第一个元素。

假设每个堆栈的推入和弹出操作都用 1 个单位时间,请你给出每个出队操作所花的时间。

输入格式:
输入首先在一行中给出一个正整数 N(≤10^3 ),是操作数量。随后 N 行,每行按以下格式给出一个操作:

操作 元素

其中 操作 或者是 I 表示入队,或者是 O 表示出队。每个 I 后面跟的 元素 是一个不超过 10^6 的正整数。O 操作后面不跟任何元素。

题目保证至少有一个 O 操作。

输出格式:
对每个出队操作,在一行中输出出队的那个元素和这出队操作所花费的单位时间数量,其间以 1 个空格分隔,行首尾不得有多余空格。
若出队操作被调用时队列是空的,则在对应行中输出 ERROR。

输入样例:
10
I 20
I 32
O
I 11
O
O
O
I 100
I 66
O

输出样例:
20 5
32 1
11 3
ERROR
100 5

题目引用自攀拓考试真题(2023年夏季)。

代码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>#define MAX_STACK_SIZE 1000// 堆栈结构体定义
typedef struct {int data[MAX_STACK_SIZE];int top;
} Stack;// 初始化堆栈
void initStack(Stack *s) {s->top = -1;
}// 入栈操作
void push(Stack *s, int elem) {s->data[++(s->top)] = elem;
}// 出栈操作,返回栈顶元素
int pop(Stack *s) {return s->data[(s->top)--];
}// 判断堆栈是否为空
int isEmpty(Stack *s) {return s->top == -1;
}int main() {int N;scanf("%d", &N);Stack s1, s2;initStack(&s1);initStack(&s2);for (int i = 0; i < N; i++) {char op[2];scanf("%s", op);if (op[0] == 'I') {int elem;scanf("%d", &elem);push(&s1, elem);} else if (op[0] == 'O') {// 处理出队操作if (isEmpty(&s1) && isEmpty(&s2)) {printf("ERROR\n");} else {int time = 0;// 若s2为空,将s1所有元素导入s2if (isEmpty(&s2)) {while (!isEmpty(&s1)) {int elem = pop(&s1);push(&s2, elem);time += 2;  // 弹出s1和压入s2各1单位时间}}// 从s2弹出元素,耗时1单位int outElem = pop(&s2);time += 1;printf("%d %d\n", outElem, time);}}}return 0;
}
http://www.dtcms.com/wzjs/20821.html

相关文章:

  • 拉趣网站是谁做的阿亮seo技术
  • 完成公司门户网站建设正规引流推广公司
  • 电子商务网站建设是学什么软件网络销售的好处和意义
  • wordpress中动态设置轮播图片百度seo营销
  • 网站建设先航科技服装网络营销策划书
  • 自己做外贸 建一个网站青岛网站建设技术外包
  • html5学习网站南京谷歌推广
  • 营销推广的形式包括淘宝seo什么意思
  • 固戍网站建设seo基础
  • 网站部署下载谷歌浏览器并安装
  • 博客网站开发报告文库sem网络推广公司
  • 网站后台任务西安网站设计公司
  • 建设职业学校精品网站2024年的新闻
  • 有没有便宜做网站的 我要做个网络推广课程培训
  • 滨江道做网站公司百度榜
  • 域名转出过程网站能打开吗seo行业网
  • 如何做旅游网站推广百度应用市场app下载
  • iis 新建网站没有文件夹权限今日最新头条新闻条
  • 学做古典家具网站自己怎么搭建网站
  • 可以兼职做翻译的网站或app茂名seo快速排名外包
  • 百度网盘怎么做网站重庆网站制作系统
  • 兰州市政府网站廉政建设如何推广一个新的app
  • 秀洲住房与建设局网站沈阳优化推广哪家好
  • 3d网站开发seo分析seo诊断
  • 网站的版式设计淄博seo推广
  • 服务器做的网站 怎么使用东莞网站seo推广
  • 深圳网站建设选哪家自助建站系统下载
  • 核桃编程免费100课北京优化推广
  • cms是什么软件百度优化seo
  • 滕州做网站的多少无代码系统搭建平台