Example #1
0
def test_quick_sort():
    """Test the correctness of the function quick_sort"""

    assert quick_sort([38, 27, 43, 22, 3, 9, 82,
                       10]) == [3, 9, 10, 22, 27, 38, 43, 82], 'incorrect'
    assert quick_sort([1, 6, 4, 3, 7, 34, 9]) == [1, 3, 4, 6, 7, 9,
                                                  34], 'incorrect'
Example #2
0
    def test_quick_sort(self):
        test = self.unordered
        test_with_dupes = self.unordered_with_dupes

        sorting.quick_sort(test, 0, len(test) - 1)
        sorting.quick_sort(test_with_dupes, 0, len(test_with_dupes) - 1)

        self.assertEqual(test, self.ordered)
        self.assertEqual(test_with_dupes, self.ordered_with_dupes)
Example #3
0
    def test_quick_sort(self):
        test = self.unordered
        test_with_dupes = self.unordered_with_dupes

        sorting.quick_sort(test, 0, len(test)-1)
        sorting.quick_sort(test_with_dupes, 0, len(test_with_dupes)-1)

        self.assertEqual(test, self.ordered)
        self.assertEqual(test_with_dupes, self.ordered_with_dupes)
Example #4
0
def lhyra_sort(data):
    features = np.array(
        [len(data), len(data) * log2(len(data) + 1),
         len(data)**2]) if len(data) > 0 else [0, 0, 0]
    choice = np.argmin(coeffs @ features + intercepts)
    if choice == 0: return merge_sort(data, lhyra_hook, {})
    elif choice == 1: return insertion_sort(data, lhyra_hook, {})
    else: return quick_sort(data, lhyra_hook, {})
Example #5
0
 def test_quick_sort(self):
     array = sorting.quick_sort(sorting.arr)
     for i in range(5):
         a = random.randint(0, len(array) - 1)
         b = random.randint(0, len(array) - 1)
         if (a > b):
             assert array[a] > array[b]
         elif (a <= b):
             assert array[a] <= array[b]
Example #6
0
def sort_list(choice, lista):

    #classe Monitor gera objetos relatorio
    time1 = timeit.default_timer()
    if ((choice) == 0):
        relatorio = insertion_sort(lista)
    elif ((choice) == 1):
        relatorio = selection_sort(lista)
    elif ((choice) == 2):
        relatorio = merge_sort(lista)
    elif ((choice) == 3):
        relatorio = quick_sort(lista)
#    else:
#        CompMov = bubble_sort(lista)
    time2 = timeit.default_timer()  #(time2)-(time1)

    relatorio.time = (time2 - time1)
    relatorio.text = "Tempo para ordenar dados: "
    return (relatorio)
Example #7
0
def test_functions():
    """
    make sure all functions work correctly
    """

    assert factorial(4) == 24, 'incorrect'
    assert fibonacci(8) == 21, 'incorrect'
    assert reverse(
        'A sentence that has to be reversed by the reverse function'
    ) == 'noitcnuf esrever eht yb desrever eb ot sah taht ecnetnes A', 'incorrect'
    assert sum_array([[5, 5], [20], [2, 1]]) == 33, 'incorrect'
    assert bubble_sort([59, 69, 3, 58, 494, 4, 13,
                        30]) == [59, 3, 58, 69, 4, 13, 30, 494], 'incorrect'

    #lists to test merge_sort function

    x = [34, 5, 2, 6]
    y = [12, 34, 54, 1]
    assert merge_sort(x + y) == [1, 2, 5, 6, 12, 34, 34, 54], 'incorrect'
    assert quick_sort([5, 6, 3, 7, 11, 44]) == [3, 5, 6, 7, 11,
                                                44], 'incorrect'
Example #8
0
def main():
    """ generate an array of length '10' sort it and as the user which element they would like """

    sorted_array = quick_sort([random.randint(1, 1000) for i in range(10)])

    while True:
        try:
            element = int(input('Which element do you want to find? '))
            break
        except ValueError:
            print("Please enter a integer between 1 and {0}".format(
                len(sorted_array)))

    print("{0}".format(sorted_array))

    try:
        if element > len(sorted_array) // 2:
            print('The {0} largest element is {1}'.format(
                ordinal(element), sorted_array[element - 1]))
        else:
            print('The {0} smallest element is {1}'.format(
                ordinal(element), sorted_array[element - 1]))
    except IndexError:
        raise IndexError('Index is not in list')
Example #9
0
 def test_quick_sort(self):
     """Tests that test list is correctly sorted."""
     self.assertEqual(sorted(self.test_list), quick_sort(self.test_list))
 def test_quick_sort(self):
     self.assertEqual(quick_sort(self.unsorted_array), self.sorted_array)
Example #11
0
def test_quick_sort(input_arr, expected_arr):
    sorting.quick_sort(input_arr)
    assert input_arr == expected_arr
Example #12
0
def test_iter_quick_sort(test_arg, expected):
    """Testing iterative Quick Sort"""
    assert quick_sort(test_arg) == expected
Example #13
0
def test_quick_sort(test_arg, expected):
    """Testing Quick Sort"""
    assert quick_sort(test_arg) == expected
 def test_quick_sort(self):
     sorting.quick_sort(self.list_a)
     sorting.quick_sort(self.list_b)
     sorting.quick_sort(self.list_c)
     sorting.quick_sort(self.list_d)
     sorting.quick_sort(self.list_one)
     sorting.quick_sort(self.list_two)
     self.assertEqual(self.list_a, self.list_sorted)
     self.assertEqual(self.list_b, self.list_sorted)
     self.assertEqual(self.list_c, self.list_sorted)
     self.assertEqual(self.list_d, self.list_sorted)
     self.assertEqual(self.list_one, [1])
     self.assertEqual(self.list_two, [-10, -5])
 def test_quick_sort(self):
     """Tests that test list is correctly sorted."""
     self.assertEqual(sorted(self.test_list), quick_sort(self.test_list))
Example #16
0
def test_quick_sort():
    numbers = random_list(max_numbers)

    sorting.quick_sort(numbers, 0, numbers.count() - 1)

    assert is_sorted(numbers)
Example #17
0
def test_quick_sort():
    numbers = random_list(max_numbers)

    lista1 = sorted(numbers)
    lista2 = sorting.quick_sort(numbers)
    assert lista1 == lista2