Beispiel #1
0
    def test_count(self):
        a = [3, 2]
        n = count_inversions(a)
        self.assertEqual(1, n)
        self.assertEquals([2, 3], a)

        a = [54044, 14108, 79294, 29649, 25260]
        n = count_inversions(a)
        self.assertEquals([14108, 25260, 29649, 54044, 79294], a)
        self.assertEquals(6, n)
 def runTest(self):
     tenReverseSorted = [10,9,8,7,6,5,4,3,2,1]
     expectedInversions = len(tenReverseSorted) * (len(tenReverseSorted) - 1) / 2
     actualInversions, mergeSorted = count_inversions(tenReverseSorted)
     
     print(actualInversions)
     print(mergeSorted)
     self.assertEqual(expectedInversions, actualInversions, "count_inversions returned invalid result!")
     
     self.assertEqual(0, count_inversions([])[0], "count_inversions returned invalid result!")
     self.assertEqual(0, count_inversions([1])[0], "count_inversions returned invalid result!")
     self.assertEqual(1, count_inversions([2,1])[0], "count_inversions returned invalid result!")
     self.assertEqual(4, count_inversions([4,3,40,30,400,300,4000,3000])[0], "count_inversions returned invalid result!")
Beispiel #3
0
 def test_count_empty_array(self):
     self.assertEqual(0, count_inversions([]))