コード例 #1
0
ファイル: lab7_tests.py プロジェクト: rihuaa/lab7-minPQ
 def test_pq1(self):
     pq = MinPQ()
     self.assertTrue(pq.is_empty())
     for i in reversed(range(5)):
         print("pq.insert(", i, ")")
         pq.insert(i)
     self.assertEqual(pq.size(), 5)
     self.assertFalse(pq.is_empty())
     self.assertEqual(pq.min(), 0)
コード例 #2
0
 def test_pq(self):
     pq = MinPQ([3, 10, 231, 5])
     self.assertEqual(pq.is_empty(), False)
     self.assertEqual(pq.size(), 4)
     self.assertEqual(pq.capacity, 4)
     self.assertEqual(pq.min(), 3)
     self.assertEqual(pq.del_min(), 3)
     self.assertEqual(pq.del_min(), 5)
     self.assertEqual(pq.del_min(), 10)
     self.assertEqual(pq.del_min(), 231)
     self.assertRaises(IndexError, pq.min)
     self.assertRaises(IndexError, pq.del_min)
     self.assertEqual(pq.is_empty(), True)
     self.assertEqual(pq.num_items, 0)
コード例 #3
0
ファイル: lab7_tests.py プロジェクト: rihuaa/lab7-minPQ
    def test_pq4(self):

        arr = [5, 2, 3, 4, 1]
        print(arr)
        pq = MinPQ(arr)
        print("pq.heapify(",arr,")")
        self.assertEqual(pq.size(), 5)
        self.assertEqual(pq.capacity, 5)
        self.assertFalse(pq.is_empty())
        self.assertEqual(pq.min(), 1)
        self.assertEqual(pq.del_min(), 1)
        self.assertEqual(pq.del_min(), 2)
        self.assertEqual(pq.del_min(), 3)
        self.assertEqual(pq.del_min(), 4)
        self.assertEqual(pq.del_min(), 5)
        self.assertTrue(pq.is_empty())
コード例 #4
0
 def test_full_functionality(self):
     """ Tests the bulk functionality of the MinPQ class"""
     pq_test = MinPQ()
     pq_test.insert(6)
     self.assertEqual(2, pq_test.capacity)
     self.assertEqual(pq_test.size(), pq_test.num_items)
     pq_test.insert(7)
     self.assertEqual([6, 7], pq_test.arr)
     pq_test.insert(2)
     self.assertEqual(3, pq_test.size())
     self.assertEqual([2, 7, 6, None], pq_test.arr)
     self.assertFalse(pq_test.is_empty())
     self.assertEqual(2, pq_test.del_min())
     self.assertEqual(6, pq_test.del_min())
     self.assertEqual(7, pq_test.del_min())
     self.assertTrue(pq_test.is_empty())
コード例 #5
0
 def test_use_case_two(self):
     """ Implementation of use case 2 as outlined in lab instructions"""
     pq_test = MinPQ([5, 4, 3, 2, 1])
     self.assertEqual(5, pq_test.size())
     self.assertEqual(5, pq_test.capacity)
     self.assertEqual(pq_test.num_items, pq_test.capacity)
     self.assertTrue(pq_test.arr == [1, 2, 3, 5, 4])
     self.assertEqual(1, pq_test.min())
     self.assertEqual(1, pq_test.del_min())
     self.assertEqual(2, pq_test.del_min())
     self.assertFalse(pq_test.is_empty())
     self.assertEqual(3, pq_test.del_min())
     self.assertEqual(4, pq_test.del_min())
     self.assertEqual(5, pq_test.del_min())
     self.assertEqual(2, pq_test.capacity)
     self.assertEqual(0, pq_test.size())
     self.assertTrue(pq_test.is_empty())
コード例 #6
0
 def test_2(self):
     pq = MinPQ([5, 4, 3, 2, 1])
     self.assertEqual(pq.size(), 5)
     self.assertTrue(pq.capacity == 5)
     self.assertTrue(pq.capacity == pq.num_items)
     self.assertTrue(pq.arr == [1, 2, 3, 5, 4])
     self.assertEqual(pq.min(), 1)
     self.assertEqual(pq.del_min(), 1)
     self.assertEqual(pq.del_min(), 2)
     self.assertEqual(pq.del_min(), 3)
     self.assertEqual(pq.del_min(), 4)
     self.assertEqual(pq.del_min(), 5)
     self.assertTrue(pq.capacity == 2)
     self.assertEqual(pq.size(), 0)
     self.assertTrue(pq.is_empty())
コード例 #7
0
 def test_1(self):
     pq = MinPQ()
     pq.insert(5)
     pq.insert(3)
     self.assertEqual(pq.capacity, 2)
     pq.insert(6)
     self.assertEqual(pq.size(), 3)
     self.assertTrue(pq.capacity == 4)
     self.assertEqual(pq.min(), 3)
     self.assertEqual(pq.del_min(), 3)
     self.assertEqual(pq.del_min(), 5)
     self.assertEqual(pq.del_min(), 6)
     self.assertEqual(pq.size(), 0)
     self.assertTrue(pq.is_empty())
     self.assertTrue(pq.capacity == 2)
コード例 #8
0
 def test_use_case_one(self):
     """ Implementation of use case 1 as outlined in lab instructions"""
     pq_test = MinPQ()
     pq_test.insert(5)
     pq_test.insert(3)
     self.assertTrue(pq_test.capacity == 2)
     pq_test.insert(6)
     self.assertEqual(3, pq_test.size())
     self.assertEqual(3, pq_test.min())
     self.assertEqual(3, pq_test.del_min())
     self.assertEqual(5, pq_test.del_min())
     self.assertEqual(6, pq_test.del_min())
     self.assertEqual(0, pq_test.size())
     self.assertTrue(pq_test.is_empty())
     self.assertEqual(2, pq_test.capacity)
コード例 #9
0
ファイル: lab7_tests.py プロジェクト: rihuaa/lab7-minPQ
 def test_pq3(self):
     pq = MinPQ()
     self.assertTrue(pq.is_empty())
     i = 1
     print("pq.insert(", i, ")")
     pq.insert(i)
     self.assertEqual(pq.min(), 1)
     i = 5
     print("pq.insert(", i, ")")
     pq.insert(i)
     self.assertEqual(pq.min(), 1)
     i = 3
     print("pq.insert(", i, ")")
     pq.insert(i)
     self.assertEqual(pq.del_min(), 1)
     i = 4
     print("pq.insert(", i, ")")
     pq.insert(i)
     self.assertEqual(pq.min(), 3)
     i = 2
     print("pq.insert(", i, ")")
     pq.insert(i)
     self.assertEqual(pq.min(), 2)
     self.assertEqual(pq.del_min(), 2)