コード例 #1
0
    def test_remove_at_the_end(self):
        priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator())

        priorityQueue.add(5)
        priorityQueue.add(10)
        priorityQueue.add(1)
        priorityQueue.add(11)

        self.assertTrue(priorityQueue.remove(1))

        self.assertEqual(3, priorityQueue.length())
        self.assertEqual(11, priorityQueue.pop())
        self.assertEqual(10, priorityQueue.pop())
        self.assertEqual(5, priorityQueue.pop())
コード例 #2
0
    def test_remove_at_the_end(self):
        priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator())

        priorityQueue.add(5)
        priorityQueue.add(10)
        priorityQueue.add(1)
        priorityQueue.add(11)

        self.assertTrue(priorityQueue.remove(1))

        self.assertEqual(3, priorityQueue.length())
        self.assertEqual(11, priorityQueue.pop())
        self.assertEqual(10, priorityQueue.pop())
        self.assertEqual(5, priorityQueue.pop())
コード例 #3
0
    def test_remove_in_the_middle(self):
        priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator())

        priorityQueue.add(5)
        priorityQueue.add(10)
        priorityQueue.add(1)
        priorityQueue.add(11)

        self.assertFalse(priorityQueue.remove(50))
        self.assertTrue(priorityQueue.remove(10))

        self.assertEqual(3, priorityQueue.length())
        self.assertEqual(11, priorityQueue.pop())
        self.assertEqual(5, priorityQueue.pop())
        self.assertEqual(1, priorityQueue.pop())
コード例 #4
0
    def test_remove_in_the_middle(self):
        priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator())

        priorityQueue.add(5)
        priorityQueue.add(10)
        priorityQueue.add(1)
        priorityQueue.add(11)

        self.assertFalse(priorityQueue.remove(50))
        self.assertTrue(priorityQueue.remove(10))

        self.assertEqual(3, priorityQueue.length())
        self.assertEqual(11, priorityQueue.pop())
        self.assertEqual(5, priorityQueue.pop())
        self.assertEqual(1, priorityQueue.pop())
コード例 #5
0
    def test_pop_add(self):
        priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator())

        priorityQueue.add(5)
        priorityQueue.add(10)
        priorityQueue.add(1)
        priorityQueue.add(11)
        priorityQueue.add(3)

        self.assertEqual(5, priorityQueue.length())

        self.assertEqual(11, priorityQueue.pop())
        self.assertEqual(10, priorityQueue.pop())
        self.assertEqual(5, priorityQueue.pop())
        self.assertEqual(3, priorityQueue.pop())
        self.assertEqual(1, priorityQueue.pop())
コード例 #6
0
    def test_pop_add(self):
        priorityQueue = PriorityQueue(TestPriorityQueue.TestComparator())

        priorityQueue.add(5)
        priorityQueue.add(10)
        priorityQueue.add(1)
        priorityQueue.add(11)
        priorityQueue.add(3)

        self.assertEqual(5, priorityQueue.length())

        self.assertEqual(11, priorityQueue.pop())
        self.assertEqual(10, priorityQueue.pop())
        self.assertEqual(5, priorityQueue.pop())
        self.assertEqual(3, priorityQueue.pop())
        self.assertEqual(1, priorityQueue.pop())