* 实现思路: * * 1)准备两个栈stack1和stack2 * 2)入队列时,数据先向stack1中push * 3)出队列时,先判断stack2是否是空的, * 3.1)如果是空的就将stack1中的元素依次向stack2中push(直至stack1为空),然后从stack2中弹出一个元素返回 * 3.2)如果不是空的,说明stack1中的数据全部转到了stack2,直接从stack2中返回。 * 后续插入直接插入到stack1中,当stack2中的元素空了之后,再将stack1中的元素全部放入stack2中。以此循环往复,实现FIFO效果 *
上rehuhu的代码!!
package com.lll.algorithms.collection.queue;
import java.util.Stack;
/**
* @ClassName : MyQueueWithStack
* @Description: 利用栈实现队列的出队入队
* @Author: liulianglin
* @Date: 2021/10/14 15:17
* @Version : 1.0
*
* 实现思路:
*
* 1)准备两个栈stack1和stack2
* 2)入队列时,数据先向stack1中push
* 3)出队列时,先判断stack2是否是空的,
* 3.1)如果是空的就将stack1中的元素依次向stack2中push(直至stack1为空),然后从stack2中弹出一个元素返回
* 3.2&