MCPcopy Index your code
hub / github.com/HuberTRoy/leetCode / MinStack

Class MinStack

Stack/GetMinStack.py:56–83  ·  view source on GitHub ↗

一个可以在O(1)时间内获取出最小值的栈。

Source from the content-addressed store, hash-verified

54
55
56class MinStack(Stack):
57 """
58 一个可以在O(1)时间内获取出最小值的栈。
59 """
60 def __init__(self):
61 super().__init__()
62
63 self.minStack = Stack()
64
65 def push(self, value):
66 super().push(value)
67 if self.minStack.empty():
68 self.minStack.push(value)
69 else:
70 if self.minStack.get_top() <= value:
71 self.minStack.push(self.minStack.get_top())
72 else:
73 self.minStack.push(value)
74
75 def pop(self):
76 super().pop()
77 self.minStack.pop()
78
79 def get_min(self):
80 """
81 返回栈顶但不压出。
82 """
83 return self.minStack.get_top()
84
85
86a = Stack()

Callers 1

GetMinStack.pyFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected