题解 | #栈的压入、弹出序列#

栈的压入、弹出序列

http://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106

# -*- coding:utf-8 -*-
class Solution:
    def IsPopOrder(self, pushV, popV):
        # write code here
        # result = True
        l = []
        j = 0 # 用于标识弹出序列的位置
        for i in range(len(pushV)): # 思路:遍历pushV的元素压入l,每次压入后进行判断l栈顶是否与popV当前位置元素相同
            l.append(pushV[i])
            # while 条件,判断辅助栈的栈顶元素是否等于popV[j] 
            while l and l[-1] == popV[j]:
                # 符合条件则辅助栈弹出栈顶元素
                l.pop()
                j += 1
        return l == [] # 根据l是否为空判断输出结果
'''        while j < len(pushV):
            if l and l[-1] == popV[j]:
                l.pop()
                j += 1
            else:
                l.append(pushV[i])
                i += 1
        if l == []:
            return True
        else:
            return False'''
            
'''            l.append(pushV.pop())
        for i in range(len(l)):
            if l[i] != popV:
                result = False
        return result'''
            
全部评论

相关推荐

07-11 15:12
门头沟学院 Java
别人在上班,我就在工位上看看视频啥的,这正常吗?
程序员小白条:实习就是摸鱼,只是公司指标,把你进来了,可能那时候客户很多,但等你进来的时候,已经是淡季了,根本没多少需求,或者说根本不适合实习生去完成,因此你就每天干坐着就行,可能1,2个月都没需求
实习生的蛐蛐区
点赞 评论 收藏
分享
仁者伍敌:牛子这些人还会点一个自动回复,boss都不带回复的
点赞 评论 收藏
分享
07-09 18:33
门头沟学院 Java
这么逆天每年都有人去???&nbsp;填多益网申就是大型的服从性测试
鲁大牛:辅导员在群里发了这个公司我就申了一下。网申居然要写当场开摄像头写两篇不少于三百字的作文。太逆天了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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