数据结构如何建立多个队列为什么队列出队操作返回类型是整型?

题目描述:用两个栈来实现一个隊列完成队列的push和pop操作。 队列中的元素为int类型–剑指offer
思路栈是后进先出,队列是后进后出堆栈1中元素出栈,出栈的元素进入堆栈2这样就使得堆栈 1和堆栈2中的元素的顺序恰好是相反的。(比如堆栈1中元素顺序为{5 4 3 2 1}那堆栈2中元素顺序必然为{1 2 3 4 5})利用这个性质就可以完成隊列的push和pop操作。

比如入队6则在堆栈1的栈顶插入6,(针对表1)

若从队列1则将堆栈2的栈顶元素出栈。(针对表1)

public://思路:一个堆栈出栈然后叺另一个栈栈内元素是恰好相反的。 stack2.pop();//出队列的元素在队首所以即堆栈2出栈 return x;//队列不为空则返回队首元素

思路:队列其实也是一个链表呮是队列还有两个特殊的结点,一个指向队头一个指向队尾。先设计数据结构如何建立多个队列如下

我要回帖

更多关于 数据结构如何建立多个队列 的文章

 

随机推荐