示例#1
0
    def test_stack(self):
        stack = StackWithMin()
        stack.push(1)
        self.assertEqual(stack.min(), 1)

        stack.push(2)
        self.assertEqual(stack.min(), 1)

        stack.push(0)
        self.assertEqual(stack.min(), 0)

        stack.push(4)
        self.assertEqual(stack.min(), 0)

        stack.pop()
        self.assertEqual(stack.min(), 0)

        stack.pop()
        self.assertEqual(stack.min(), 1)

        stack.push(-1)
        self.assertEqual(stack.min(), -1)

        stack.pop()
        self.assertEqual(stack.min(), 1)
示例#2
0
 def testMin(self):
     stack = StackWithMin()
     stack.push(10)
     stack.push(5)
     self.assertEqual(stack.getMin(), 5)
     stack.push(3)
     stack.push(9)
     self.assertEqual(stack.getMin(), 3)
示例#3
0
 def testPushAndPop2(self):
     stack = StackWithMin()
     stack.push(10)
     stack.push(5)
     self.assertEqual(stack.pop(), 5)
     stack.push(9)
     stack.push(3)
     self.assertEqual(stack.pop(), 3)
示例#4
0
 def testPushAndPop(self):
     stack = StackWithMin()
     stack.push(1)
     stack.push(2)
     stack.push(3)
     stack.push(4)
     self.assertEqual(stack.pop(), 4)
     self.assertEqual(stack.pop(), 3)
     self.assertEqual(stack.pop(), 2)
     self.assertEqual(stack.pop(), 1)