#include

#include

typedef struct sq

{

char *ps;

int top;

int Maxsize;

}stack;

void initstack(stack *s,int ms)

{

s->ps=(char*)malloc(ms*sizeof(char));

s->top=-1;

s->Maxsize=ms;

};

void push(stack *s,char val)

{

if(s->top==s->Maxsize-1)

{

printf("栈已满\n");

return ;

}

s->ps[++s->top]=val;

};

char  pop(stack *s)

{

char k;

if(s->top==-1)  return 1;

k=s->ps[s->top];

s->top--;

return k;

};

void push_queue(stack *s1,stack* s2)

{

char val ;

scanf("%c",&val);

push(s1,val);

}

void pop_queue(stack *s1,stack *s2)

{

char x;

if(-1==s2->top)

{ while(-1!=s1->top)

{

x=pop(s1);

push(s2,x);

}

}  while(-1!=s2->top){ x=pop(s2);printf("%c",x);}

}

int main(int argc,char **argv)

{

stack  s1,s2; int i;

printf("输入进队序列\n");

initstack(&s1,10); initstack(&s2,10);

for(i=0;i<10;i++)  push_queue(&s1,&s2);

printf("出对序列为:\n");

pop_queue(&s1,&s2);

return 0;

}

两个队列实现一个栈思路c语言,两个栈实现队列功能C语言实现能运行!相关推荐

  1. 一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。 编写一个函数找出这两个只出现一次的数字。

    一个数组中只有两个数字是出现一次,其他所有数字都出现了两次.编写一个函数找出这两个只出现一次的数字. 1.代码编写 2.结果 1.代码编写 代码如下(示例): #define _CRT_SECURE_ ...

  2. 【小题目】输入两个数字以及一个符号,输出这两个数字在这个符号下运算产生的结果

    import java.util.Scanner; public class SwitchCaseExer {public static void main(String[] args){// 获取两 ...

  3. c语言将两个文件合成一个,keil中怎么把两个c程序怎么同时同时编译生成一个hex文件...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 第一个c程序 #include #include"lcd.h" //--定义全局变量--// unsigned char PuZh[] ...

  4. 两个栈实现一个队列,两个队列实现一个栈

    题目:用两个栈实现一个队列,用两个队列实现一个栈. 首先要了解栈和队列这两种数据结构各自的特点,栈是一种后入先出(Last In First Out,LIFO)的数据结构,队列是一种先进先出(Firs ...

  5. 两段视频合成一个视频用什么软件 怎么把两段视频合成一段看不出来

    两段视频合成一个视频用什么软件?无论是两段视频的合成,还是三段视频的合成,用视频编辑软件都能轻松搞定.但怎么把两段视频合成一段看不出来?这就比较考验制作者的功力了,不过我们还是有捷径的,下面一起来看看 ...

  6. java实现-两个栈实现一个队列和两个队列实现一个栈

    1.两个栈实现一个队列 思路:压入元素直接入stack1,删除元素先判断stack2中是否为空,如果不为空直接弹出:为空则将stack1中的元素取出压入 stack2中再弹出. 代码: import ...

  7. C/C++面试题—使用STL两个队列实现一个栈

    题目介绍 使用STL中的两个队列实现一个栈,实现栈的top.pop.push.clear等操作. 思路分析 思路和使用2个栈实现一个队列是相通的,用一个队列queue1容器用来 压栈,出栈的时候判断q ...

  8. python ——两个队列实现一个栈两个栈实现一个队列

    1.两个队列实现一个栈 进栈:元素入队列A 出栈:判断如果队列A只有一个元素,则直接出队.否则,把队A中的元素出队并入队B,直到队A中只有一个元素,再直接出队.为了下一次继续操作,互换队A和队B. p ...

  9. 两个栈实现一个队列与两个队列实现一个栈

    http://blog.csdn.net/z84616995z/article/details/19204529 两个栈实现一个队列: 原理方法:用一个栈为主栈,一个栈为辅助栈存放临时元素. 入队:将 ...

  10. 两个栈实现一个队列/两个队列实现一个栈

    http://blog.csdn.net/sinat_30472685/article/details/70157227 1两个栈实现一个队列 1.原理分析: 队列的主要操作有两个:入队操作和出队操作 ...

最新文章

  1. 【HDOJ】3275 Light
  2. java反射设置access_Java反射之java.lang.reflect.Field
  3. scrapy 6023 telnet查看爬虫引擎相关状态
  4. 机关单位公文编写注意事项
  5. 07- app的弱网测试
  6. mysql元数据死锁日志,MySQL 实战笔记 第02期:MySQL 元数据锁
  7. 导购提成怎么算_空调选购,别问“小白”问题,问导购这几个参数,才会显得内行...
  8. word 代码_怎样在Word 中插入 C/C++ 代码
  9. Controller接口控制器(3)
  10. json解析对应的value为null_解决golang json解析出现值为空的问题
  11. python对excel数据统计_数据分析EPHS(4)-使用Excel和Python计算数列统计值
  12. JavaWeb开发框架——Spring
  13. html5黑洞吸收粒子动画js特效
  14. Fingerprint2 生成浏览器指纹应用
  15. Koo叔说Shader-贴图切换
  16. HDFS的设计目标是什么?
  17. 职场内耗,正在让这个团队瓦解
  18. Sara 老友记 第一季第六集 Joey天天演烂片
  19. 纯生js ajax,纯生js实现Element中input组件的部分功能(慢慢完善)并封装成组件
  20. 微软E5账号OneDrive无法扩容解决方案(亲测有效)

热门文章

  1. oracle部署--安装oracle软件与部署单实例数据库
  2. python数据结构与算法
  3. [DB]mysql 及sql server2005下实现分页效果的sql语句
  4. 数据科学家访谈录 百度网盘_您应该在数据科学访谈中向THEM提问。
  5. 数据科学家 数据工程师_数据科学家实际上赚了多少钱?
  6. 霸县计算机学校,廊坊中专排名2021
  7. java returnaddress,JVM之数据类型
  8. android webView的缓存机制和资源预加载
  9. 559. N 叉树的最大深度
  10. 播客#45:迪伦·以色列