Skip to content

Commit 2f6efaf

Browse files
committed
2020-05-13
1 parent e3d4528 commit 2f6efaf

File tree

2 files changed

+22
-15
lines changed

2 files changed

+22
-15
lines changed

0155.最小栈/0155-最小栈.py

+12-15
Original file line numberDiff line numberDiff line change
@@ -4,43 +4,40 @@ def __init__(self):
44
"""
55
initialize your data structure here.
66
"""
7-
self.stack = []
8-
self.minstack = []
7+
self.s = []
8+
self.min_s = []
99

1010
def push(self, x):
1111
"""
1212
:type x: int
1313
:rtype: None
1414
"""
15-
self.stack.append(x)
16-
if self.minstack:
17-
if x < self.minstack[-1]:
18-
self.minstack.append(x)
19-
else:
20-
self.minstack.append(self.minstack[-1])
15+
self.s.append(x)
16+
if self.min_s:
17+
self.min_s.append(min(x, self.min_s[-1]))
2118
else:
22-
self.minstack.append(x)
23-
19+
self.min_s.append(x)
2420

2521
def pop(self):
2622
"""
2723
:rtype: None
2824
"""
29-
self.minstack.pop()
30-
self.stack.pop()
25+
self.min_s.pop()
26+
self.s.pop()
27+
3128

3229
def top(self):
3330
"""
3431
:rtype: int
3532
"""
36-
return self.stack[-1]
33+
return self.s[-1]
3734

3835
def getMin(self):
3936
"""
4037
:rtype: int
4138
"""
42-
return self.minstack[-1]
43-
39+
return self.min_s[-1]
40+
4441

4542
# Your MinStack object will be instantiated and called as such:
4643
# obj = MinStack()
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
class Solution(object):
2+
def findMagicIndex(self, nums):
3+
"""
4+
:type nums: List[int]
5+
:rtype: int
6+
"""
7+
for i, num in enumerate(nums):
8+
if i == num:
9+
return i
10+
return -1

0 commit comments

Comments
 (0)