栈和队列的相互实现--思路

博客园

两个栈实现一个队列:

思路:先将数据存到第一个栈里,再将第一个栈里的元素全部出栈到第二个栈,第二个栈出栈,即可达到先进先出

两个队列实现一个栈:

思路:先将数据存到第一个队列里面,然后数据出队一直出队到地二个队列里面,直到第一个队列里面剩余一个数据,这个时候出队 即可达到先进后出的特性

用1个栈实现一个队列。

思路:用递归的方法把数据从最底部移出来。

用1个队列实现一个栈。

思路:“队列栈”:用一个队列实现一个栈

出栈思路:
1.将队列的队头元素取出,保存在变量data中,然后Pop掉,再将data Push进队列
2.若队列有n个元素,则需要进行步骤1 n -1 次后,此时队头元素就为此队列最后进入的值

posted @ 2020-07-03 10:07  唐啊唐囧囧  阅读(270)  评论(0编辑  收藏  举报