Рубрики

Программа Python для подсчета сортировки

Подсчет сортировки — это метод сортировки, основанный на ключах между определенным диапазоном. Он работает путем подсчета количества объектов, имеющих различные ключевые значения (вид хеширования). Затем делаем некоторую арифметику, чтобы вычислить положение каждого объекта в выходной последовательности.

# Python программа для подсчета сортировки

  
# Основная функция, которая сортирует заданную строку arr [] в
# Алфавитный порядок

def countSort(arr):

  

    # Выходной массив символов, который будет иметь отсортированный обр

    output = [0 for i in range(256)]

  

    # Создайте массив count для хранения счетчика inidividul

    # символов и инициализировать массив count как 0

    count = [0 for i in range(256)]

  

    # Для хранения полученного ответа, так как

    # строка неизменна

    ans = ["" for _ in arr]

  

    # Хранить количество каждого персонажа

    for i in arr:

        count[ord(i)] += 1

  

    # Измените count [i] так, чтобы count [i] теперь содержал фактический

    # позиция этого символа в выходном массиве

    for i in range(256):

        count[i] += count[i-1]

  

    # Построить выходной массив символов

    for i in range(len(arr)):

        output[count[ord(arr[i])]-1] = arr[i]

        count[ord(arr[i])] -= 1

  

    # Скопируйте выходной массив в arr, так что теперь arr

    # содержит отсортированные символы

    for i in range(len(arr)):

        ans[i] = output[i]

    return ans 

  
# Программа драйвера для проверки вышеуказанной функции

arr = "geeksforgeeks"

ans = countSort(arr)

print "Sorted character array is %s"  %("".join(ans))

  
# Этот код предоставлен Nikhil Kumar Singh

Выход:

Sorted character array is eeeefggkkorss

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

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

Программа Python для подсчета сортировки

0.00 (0%) 0 votes