getmin栈_python3

设计getMin功能的栈

http://www.nowcoder.com/questionTerminal/05e57ce2cd8e4a1eae8c3b0a7e9886be

不需要弄两个列表啊,一个就可以了

class Stack(object):
    def __init__(self):
        self.stack = []
    def push(self, value):
        if not self.stack or self.stack[-1] >= value:
            self.stack.append(value)
        else:
            self.stack.append(self.stack[-1])
    def pop(self):
        if self.stack:
            self.stack.pop(-1)
    def getMin(self):
        if self.stack:
            return self.stack[-1]

s = Stack()
n = int(input())
for _ in range(n):
    l = input().split()
    if l[0] == 'push':
        s.push(int(l[1]))
    elif l[0] == 'pop':
        s.pop()
    elif l[0] == 'getMin':
        print(s.getMin())
全部评论

相关推荐

09-19 19:43
已编辑
广东工业大学 golang
zizi哦:很牛了,稳大厂给几点建议:一、想被稳的问题,关键点,可以加深一点,一眼看过去全是文字,没事干容易抓不住重点;二、第一个开源项目很多人 star,这是一个证明你牛逼的证据,建议放在项目背景,开头就是这句话,背景到结果,并且重点标注;三、个人技能可以放后,没什么把握的可以不写上去,比如你列了这么多微服务中间件,你确定自己真的理解底层吗?如果不熟悉,可以表述为熟悉微服务体系开发,如 xxx 中间件;四、项目很多描述在讲述架构,有没有自己觉得亮点的设计,体现不出你解决问题的过程和思考。
如何写一份好简历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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