您的位置:首页 > 其它

155. Min Stack

2017-08-07 10:23 25 查看
155. Min Stack
#!/usr/bin/env python
class MinStack(object):

def __init__(self):
"""
initialize your data structure here.
"""
self.stack = []
self.minStack = []

def push(self, x):
"""
:type x: int
:rtype: void
"""
self.stack.append(x)
if not self.minStack:
self.minStack.append(x)
else:
top = self.minStack[-1]
if top >= x:
self.minStack.append(x)
#
def pop(self):
"""
:rtype: void
"""
if self.stack:
x = self.stack.pop()
top = self.minStack[-1]
if x == top:
return self.minStack.pop()

def top(self):
"""
:rtype: int
"""
if self.stack:
return self.stack[-1]

def getMin(self):
"""
:rtype: int
"""
if self.minStack:
return self.minStack[-1]

# Your MinStack object will be instantiated and called as such:
# obj = MinStack()
# obj.push(x)
# obj.pop()
# param_3 = obj.top()
# param_4 = obj.getMin()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  getMin