用两个栈实现队列及两个队列实现栈方法与示例代码.pdfVIP

  • 1
  • 0
  • 约2.12千字
  • 约 2页
  • 2026-07-23 发布于北京
  • 举报

用两个栈实现队列及两个队列实现栈方法与示例代码.pdf

用两个栈实现队列_

题目描述

用两个栈来实现一个队列,完成队列的Push和Pop操作。队列中的元素为int类型。

思想:

两个栈实现一个队列(先进先出)

删除一个元素步骤:

入队:将元素压入栈1;

出队:判断栈2是否为空:

如果栈2为空,将栈1中所有元素pop,并push压入栈2,栈2依次弹出即可;

如果栈2非空,则栈2中栈顶元素就是最先入队列的元素,直接弹出即可;

两个队列实现一个栈(后进先出)

入栈:将元素进队列1

出栈:判断队列1中元素个数是否为1

如果个数为1,则出队列;

如果个数大于1,将队列1中元素依次出队列放入队列2,直到队列1中元素个数为1,然后队列1中元素

出队即可,再把队列2中元素出队列依次放入队列1中;

//栈2为空,将栈1push

while(!stack1.empty()){

val=stack1.pop();

stack2.push(val);

//栈2不为空,直接弹出栈顶元素返回

两个队列实现一个栈

//两个队列实现一个栈

LinkedListIntegerqueue1=newLinkedList();

publicvoidpush

文档评论(0)

1亿VIP精品文档

相关文档