Рубрики

Программа Python для сортировки Stooge

Сортировка по Стогу — это алгоритм рекурсивной сортировки. Это определяется как показано ниже (для сортировки по возрастанию).

Step 1 : If value at index 0 is greater than
         value at last index, swap them.
Step 2:  Recursively,
       a) Stooge sort the initial 2/3rd of the array.
       b) Stooge sort the last 2/3rd of the array.
       c) Stooge sort the initial 2/3rd again to confirm.

python3

# Python-программа для реализации сортировки марионеток
 

def stoogesort(arr, l, h):

    if l >= h:

        return

  

    # Если первый элемент меньше

    # чем в прошлом, поменяйте их местами

    if arr[l]>arr[h]:

        t = arr[l]

        arr[l] = arr[h]

        arr[h] = t

  

    # Если есть более 2 элементов в

    # массив

    if h-l+1 > 2:

        t = (int)((h-l+1)/3)

  

        # Рекурсивная сортировка первых 2/3 элементов

        stoogesort(arr, l, (h-t))

  

        # Рекурсивно сортировать последние 2/3 элемента

        stoogesort(arr, l+t, (h))

  

        # Рекурсивная сортировка первых 2/3 элементов

        # еще раз для подтверждения

        stoogesort(arr, l, (h-t))

  
 
# производный

arr = [2, 4, 5, 3, 1]

n = len(arr)

 

stoogesort(arr, 0, n-1)

  

for i in range(0, n):

    print(arr[i], end = \' \')

 
# Код предоставлен Mohit Gupta_OMG <(0_o)>

Выход:

1 2 3 4 5 

Пожалуйста, обратитесь к полной статье о Сортировке Stooge для более подробной информации!

Рекомендуемые посты:

Программа Python для сортировки Stooge

0.00 (0%) 0 votes