剑指offer-用两个栈实现队列-栈和队列-python

Posted ayew

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer-用两个栈实现队列-栈和队列-python相关的知识,希望对你有一定的参考价值。

题目描述

用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
 
# -*- coding:utf-8 -*-
class Solution:
    def __init__(self):
        self.stack1 = []
        self.stack2 = []
    def push(self, node):
        # write code here
        self.stack1.append(node)
        return self.stack1
    def pop(self):
        # return xx
        if self.stack2:
            return self.stack2.pop()
        elif not self.stack1:
            return
        else:
            while self.stack1:
                self.stack2.append(self.stack1.pop())
        return self.stack2.pop()

 

以上是关于剑指offer-用两个栈实现队列-栈和队列-python的主要内容,如果未能解决你的问题,请参考以下文章

《剑指Offer》附加题_用两个队列实现一个栈_C++版

剑指offer笔记栈和队列

剑指offer的python实现-用两个栈实现队列

剑指Offer数据结构之栈和队列[Python版]

剑指Offer数据结构之栈和队列[Python版]

剑指offer05- 用两个栈实现队列(java)