题解 | #两个队列实现栈#

没啥逻辑,补充下pytho3版本
from os import XATTR_SIZE_MAX
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param order string字符串一维数组 
# @return string字符串一维数组
#
import collections
class Solution:
    def __init__(self) -> None:
        self.que1=collections.deque()
        self.que2=collections.deque()
    def push(self,c):
        self.que1.append(c)
    def pop(self):
        while len(self.que1)>1:
            c=self.que1.popleft()
            self.que2.append(c)
        c=self.que1.popleft()
        while len(self.que2)>0:
            self.que1.append(self.que2.popleft())
        return c
    def empty(self):
        return len(self.que1)==0
    def top(self):
        return self.que1[-1]
    def simulate(self , order: List[str]) -> List[str]:
        out=[]
        for c in order:
            if c=='MTY':
                out.append(self.empty())
            elif 'PSH' in c:
                self.push(c.replace("PSH","")) 
            elif c=='TOP':
                out.append(self.top())
            else:
                out.append(self.pop())
        return out


全部评论

相关推荐

牛客54175811...:今年对双非很难。1、争取一段大厂实习经历,2、狂磕八股,3、再跑个难度提升的项目。
点赞 评论 收藏
分享
野猪不是猪🐗:😇:恭喜你以出色的表现成为xxx的一员 😨:您以进入本公司人才库 实际点开:您愿望单中的xxx正在特卖!
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务